-
Deploy Application, CICD pipeline
Deploy ApplicationIntelliJ -> GitHub -> Jenkins -> DockerHub -> Kubernetes -> AWSHow To Push a Docker Image To Docker Hub Using JenkinsJenkins 将 Docker 映像部署到 Kubernetes write code in IntelliJ and then push to GitHub Jenk...…
-
Knowledge
TDD (Test Driven Development)What is TDD?Test Driven Development (TDD) is a software development process that relies on the repetition of a very short development cycle: first the developer writes an (initially failing) automated test case that de...…
-
Transaction in microservices
Transaction in microservices2-phase commit2-phase commit is a widely used pattern to implement distributed transaction management.It has two phases: Prepare phase: The coordinator asks the participating nodes whether they are ready to commit....…
-
Swagger
SwaggerWhat is Swagger?Swagger is a tool that can be used to document APIs. It can be used to generate documentation for APIs. Swagger can also be used to test api endpoints on the swagger UI.How to use Swagger in Spring Boot?To use swagger: ...…
-
Spring Cloud Config
Spring Cloud ConfigWhere do you store your configuration file when you use microservices?Spring Cloud Config is a centralized place to store the configuration file for all microservices. In a monolithic application, we can store the configura...…
-
microservices communication
How do microservices communicate?Synchronous CommunicationHTTP RequestsMicroservices communicate with each other using HTTP requests. Each microservice has its own REST API. In Spring Boot, we can use the RestTemplate class to make HTTP requests.E...…
-
Monolith VS Microservices
Monolith VS MicroservicesMonolithMonolithic means asingle server handle multiple business logic. It is tightly coupled. It is suitable for small applications that do not need to scale or handle high throughput. It is easy to develop and deploy com...…
-
Application Monitoring (Actuator & Logging)
Application MonitoringHow to monitor in monolithic?ActuatorSpring Boot Actuator is used to monitor the status of the application in real time. It provides a set of HTTP endpoints to monitor the application. For example, Auditing, health, and metri...…
-
Kafka
KafkaWhat is Kafka?Kafka is a distributed streaming platform that is designed for high-throughput, fault-tolerant, and real-time data processing. It also can be used at message delivery. RabbitMQ has only one broker while Kafka contains many messa...…
-
Jenkins (CI/CD)
JenkinsOpen source automation server, enables developers to reliably build, test, and deploy their software. Used by QA to run automated tests, and by developers to build and deploy code.The workflow is : Run jenkins in Tomcat setup git, maven, ...…