Pro Java clustering and scalability : building real-time apps with Spring, Cassandra, Redis, Websocket and RabbitMQ /
Build clustered and scalable Java-based, real-time applications using Spring Framework, Boot, WebSocket, Cassandra, Redis and RabbitMQ. In this book, you'll tie all this together with a dive-in case study, a real-time scalable chat application under differing scenarios. Pro Java Clustering and...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
New York :
Apress,
©2017.
|
Temas: | |
Acceso en línea: | Texto completo (Requiere registro previo con correo institucional) |
Tabla de Contenidos:
- At a Glance; Contents; About the Author; About the Technical Reviewer; Introduction; Part 1: Usage; Chapter 1: Docker; 1.1 Introduction to Docker; 1.2 Docker Hub; 1.3 Image vs. Container; 1.4 Image Tags; 1.5 Docker Usage Example: Elasticsearch; 1.6 Basic Docker Commands; 1.7 The docker run Command; 1.7.1 Running Containers as a Daemon with -d; 1.7.2 Naming Containers with
- name; 1.7.3 Exposing Ports with -p; 1.7.4 Environment Variables with -e; 1.7.5 Volumes with -v; 1.8 Docker Compose; Chapter 2: Prerequisites; Chapter 3: Executing the Project Locally.
- Chapter 4: Simulating a Conversation4.1 Create a New Account; 4.2 Create a New Chat Room; 4.3 Sign In; 4.4 Chat Room; 4.5 Send Public Messages; 4.6 Send Private Messages; 4.7 Check That the Conversation Is Stored; 4.8 Receive Messages Even on Connection Failures; Chapter 5: Setting Up the Development Environment; 5.1 Apache Maven; 5.2 Import the Project into the Eclipse IDE; Part 2: Architecture; Chapter 6: Understanding the Relationship Between Domain and Architecture; Chapter 7: Introduction to NoSQL; 7.1 Modeling in NoSQL; 7.2 Cassandra Overview; 7.2.1 Cassandra Concepts; 7.2.1.1 Keyspace.
- 7.2.1.2 Column Family7.2.1.3 Primary Key; 7.2.1.4 Secondary Index; 7.2.1.5 Partition Key; 7.2.1.6 Clustering Key; 7.3 Redis Overview; 7.3.1 Redis vs. Memcached; 7.3.2 Redis Use Cases; Chapter 8: The Spring Framework; 8.1 Spring Boot; 8.2 Spring Data JPA Repositories; 8.3 Spring Data and NoSQL; Chapter 9: WebSocket; 9.1 Polling vs. WebSocket; 9.2 WebSocket and Browser Compatibility; 9.3 Raw WebSocket vs. WebSocket over STOMP; Chapter 10: Spring WebSocket; 10.1 Raw WebSocket Configuration; 10.2 WebSocket over STOMP Configuration; 10.3 Message Flow Using a Simple Broker.
- 10.4 Message Flow Using a Full External STOMP BrokerChapter 11: Single-Node Chat Architecture; Chapter 12: Multinode Chat Architecture; 12.1 Using RabbitMQ As a Full External STOMP Broker; Chapter 13: Horizontally Scaling Stateful Web Applications; 13.1 Using the Sticky Session Strategy; 13.2 Spring Session and WebSocket; Part 3: Code by Feature; Chapter 14: Changing the Application Language; Chapter 15: Login; Chapter 16: New Account; Chapter 17: New Chat Room; 17.1 Secured REST Endpoints with Spring MVC and Spring Security; Chapter 18: Joining the Chat Room.
- 18.1 WebSocket Reconnection Strategy18.2 WebSocket Events; 18.2.1 Send Public System Messages over WebSocket; Chapter 19: Sending a User's Public Messages over WebSocket; Chapter 20: Sending a User's Private Messages over WebSocket; Part 4: Testing the Code; Chapter 21: Lazy Deployments vs. Fast Deployments; Chapter 22: Continuous Delivery; Chapter 23: Types of Automated Tests; Chapter 24: Unit Tests; 24.1 InstantMessageBuilderTest.java; 24.2 DestinationsTest.java; 24.3 RedisChatRoomServiceTest.java; Chapter 25: Integration Tests.