Muutke küpsiste eelistusi

E-raamat: ActiveMQ in Action

  • Formaat: 408 pages
  • Ilmumisaeg: 30-Mar-2011
  • Kirjastus: Manning Publications
  • Keel: eng
  • ISBN-13: 9781638357025
  • Formaat - EPUB+DRM
  • Hind: 41,07 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: 408 pages
  • Ilmumisaeg: 30-Mar-2011
  • Kirjastus: Manning Publications
  • Keel: eng
  • ISBN-13: 9781638357025

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

HIGHLIGHT

ActiveMQ in Action

is an example-rich tutorial that shows Java developers how

to implement distributed messaging using ActiveMQ, and how to integrate

ActiveMQ with Java and non-Java technologies.

DESCRIPTION

Applications in enterprises need to communicate, most commonly done by messaging.

Apache ActiveMQ is an open-source implementation of the Java

Message Service (JMS), which provides messaging in Java applications.

ActiveMQ in Action is a thorough, practical guide to implementing message-oriented

systems using ActiveMQ and Java. Co-authored by one of the leading

ActiveMQ developers, Bruce Snyder, the book starts with the anatomy of a core

Java message, then moves quickly through fundamentals including data persistence,

authentication and authorization. Later chapters cover advanced features

such as configuration and performance tuning, illustrating each concept with a

running real-world stock portfolio application.

Readers will learn to integrate ActiveMQ with Apache Geronimo and JBoss, and

tie into both Java and non-Java technologies including AJAX, .NET, C++, Ruby,

and the Spring framework.

KEY POINTS

The first book to focus purely on ActiveMQ

Strong early demand through the Manning Early Access Program

Real-world examples and in-depth walkthroughs

Concise, developer-centric, In Action style

Focused on best practices gained through authors deep ActiveMQ

experience

Demonstrates using Apache Camel to utilize enterprise integration patterns
preface xv
acknowledgments xvii
about this book xix
Part 1 An introduction to messaging and ActiveMQ
1(54)
1 Introduction to Apache ActiveMQ
3(14)
1.1 ActiveMQ features
4(2)
1.2 Using ActiveMQ: why and when?
6(4)
Loose coupling and ActiveMQ
6(2)
When to use ActiveMQ
8(2)
1.3 Getting started with ActiveMQ
10(4)
Downloading and installing the Java SE
10(1)
Downloading ActiveMQ
11(1)
Examining the ActiveMQ directory
11(1)
Starting up ActiveMQ
12(2)
1.4 Running your first examples with ActiveMQ
14(2)
1.5 Summary
16(1)
2 Understanding message-oriented middleware and JMS
17(25)
2.1 Introduction to enterprise messaging
18(2)
2.2 What's message-oriented middleware?
20(1)
2.3 What's the Java Message Service?
21(2)
2.4 The JMS specification
23(12)
JMS clients
23(2)
Non-JMS clients
25(1)
The JMS provider
25(1)
The JMS message
25(1)
JMS message internals
25(4)
Message selectors
29(3)
JMS domains
32(3)
Administered objects
35(1)
2.5 Using the JMS APIs to create JMS applications
35(6)
A simple JMS application
36(3)
Message-driven beans
39(2)
2.6 Summary
41(1)
3 The ActiveMQ in Action examples
42(13)
3.1 Downloading Maven and compiling the examples
43(2)
3.2 Use case one: the stock portfolio example
45(5)
Running the stock portfolio example
46(4)
3.3 Use case two: the job queue example
50(3)
Running the job queue example
51(2)
3.4 Summary
53(2)
Part 2 Configuring standard ActiveMQ components
55(88)
4 Connecting to ActiveMQ
57(39)
4.1 Understanding connector URIs
58(2)
4.2 Transport connectors
60(3)
Configuring transport connectors
60(1)
Adapting the stock portfolio example
61(2)
4.3 Connecting to ActiveMQ over the network
63(16)
Transmission Control Protocol (TCP)
64(2)
New I/O API protocol (NIO)
66(2)
User Datagram Protocol (UDP)
68(2)
Secure Sockets Layer Protocol (SSL)
70(7)
Hypertext Transfer Protocol (HTTP/HTTPS)
77(2)
4.4 Connecting to ActiveMQ inside the virtual machine (VM connector)
79(2)
4.5 Network connectors
81(13)
Static networks
83(5)
Dynamic networks
88(6)
4.6 Summary
94(2)
5 ActiveMQ message storage
96(21)
5.1 How are messages stored by ActiveMQ?
97(1)
5.2 The KahaDB message store
98(5)
The KahaDB message store internals
99(1)
The KahaDB message store directory structure
100(1)
Configuring the KahaDB message store
101(2)
5.3 The AMQ message store
103(4)
The AMQ message store internals
103(1)
The AMQ message store directory structure
104(1)
Configuring the AMQ message store
105(2)
5.4 The JDBC message store
107(4)
Databases supported by the JDBC message store
107(1)
The JDBC message store schema
108(1)
Configuring the JDBC message store
109(2)
Using the JDBC message store with the ActiveMQ journal
111(1)
5.5 The memory message store
111(2)
Configuring the memory store
112(1)
5.6 Caching messages in the broker for consumers
113(3)
How message caching for consumers works
113(1)
The ActiveMQ subscription recovery policies
114(1)
Configuring the subscription recovery policy
115(1)
5.7 Summary
116(1)
6 Securing ActiveMQ
117(26)
6.1 Authentication
118(5)
Configuring the simple authentication plug-in
118(3)
Configuring the JAAS plug-in
121(2)
6.2 Authorization
123(8)
Destination-level authorization
124(3)
Message-level authorization
127(4)
6.3 Building a custom security plug-in
131(4)
Implementing the plug-in
132(1)
Configuring the plug-in
133(1)
Testing the plug-in
134(1)
6.4 Certificate-based security
135(7)
Preparing certificates
136(1)
Creating a truststore
136(2)
Configuring the broker
138(1)
Authorization explained
139(1)
Testing it out
139(3)
6.5 Summary
142(1)
Part 3 Using ActiveMQ to build messaging applications
143(112)
7 Creating Java applications with ActiveMQ
145(29)
7.1 Embedding ActiveMQ using Java
146(4)
Embedding ActiveMQ using the BrokerService
147(2)
Embedding ActiveMQ using the BrokerFactory
149(1)
7.2 Embedding ActiveMQ using Spring
150(8)
Pure Spring XML
151(2)
Using the BrokerFactory Bean
153(1)
Using Apache XBean with Spring
154(2)
Using a custom XML namespace with Spring
156(2)
7.3 Implementing request/reply with JMS
158(7)
Implementing the server and the worker
160(2)
Implementing the client
162(2)
Running the request/reply example
164(1)
7.4 Writing JMS clients using Spring
165(7)
Configuring JMS connections
166(1)
Configuring JMS destinations
167(1)
Creating JMS consumers
167(1)
Creating JMS producers
168(3)
Putting it all together
171(1)
7.5 Summary
172(2)
8 Integrating ActiveMQ with application servers
174(47)
8.1 The sample web application
176(5)
8.2 Integrating with Apache Tomcat
181(6)
Using local JNDI to integrate ActiveMQ with Tomcat
182(2)
Using global JNDI to integrate ActiveMQ with Tomcat
184(3)
8.3 Integrating with Jetty
187(5)
Using local JNDI to integrate ActiveMQ with Jetty
187(2)
Using global JNDI to integrate ActiveMQ with Jetty
189(3)
8.4 Integrating with Apache Geronimo
192(16)
Installing Geronimo and configuring the ActiveMQplug-in in Geronimo
192(4)
Configuring the ActiveMQJMS resources in Geronimo
196(6)
Preparing the sample application for deployment in Geronimo
202(3)
Deploying and verifying the sample application in Geronimo
205(3)
8.5 Integrating with JBoss
208(9)
Installing JBoss and configuring the ActiveMQ resource adapter in JBoss
209(3)
Configuring the ActiveMQJMS resources in JBoss
212(1)
Preparing the sample application for deployment inJBoss
212(3)
Deploying and verifying the sample application inJBoss
215(2)
8.6 ActiveMQ and JNDI
217(3)
Client-side JNDI configuration
217(3)
8.7 Summary
220(1)
9 ActiveMQ messaging for other languages
221(34)
9.1 Adapting the stock portfolio example
222(2)
9.2 Messaging for scripting languages
224(17)
STOMP protocol basics
224(2)
Configuring STOMP transport
226(1)
Ruby STOMP consumer
227(2)
Python STOMP consumer
229(4)
PHP STOMP consumer
233(1)
Perl STOMP consumer
234(2)
Advanced messaging with STOMP
236(5)
9.3 Messaging for compiled languages
241(6)
Writing a C# consumer (using the NMS API)
242(2)
Writing a C++ consumer (using the CMS API)
244(3)
9.4 Messaging on the web with ActiveMQ
247(7)
Using the ActiveMQ REST API
248(2)
Using the ActiveMQ Ajax API
250(4)
9.5 Summary
254(1)
Part 4 Advanced features in ActiveMQ
255(112)
10 Deploying ActiveMQ in the enterprise
257(20)
10.1 Configuring ActiveMQ for high availability
258(5)
Shared nothing master/slave
258(3)
Shared storage master/slave
261(2)
10.2 How ActiveMQ passes messages across a network of brokers
263(9)
Store and forward
264(2)
Network discovery
266(2)
Network configuration
268(4)
10.3 Deploying ActiveMQ for large numbers of concurrent applications
272(4)
Vertical scaling
272(3)
Horizontal scaling
275(1)
Traffic partitioning
275(1)
10.4 Summary
276(1)
11 ActiveMQ broker features in action
277(18)
11.1 Wildcards and composite destinations
278(2)
Consume from multiple destinations using wildcards
278(1)
Sending a message to multiple destinations
279(1)
11.2 Advisory messages
280(4)
11.3 Supercharge JMS topics by going virtual
284(2)
11.4 Retroactive consumers
286(1)
11.5 Message redelivery and dead-letter queues
287(1)
11.6 Extending functionality with interceptor plug-ins
288(4)
Visualization
288(2)
Enhanced logging
290(1)
Central timestamp messages with the timestamp interceptor plug-in
291(1)
Statistics
291(1)
11.7 Routing engine with Apache Camel framework
292(2)
11.8 Summary
294(1)
12 Advanced client options
295(17)
12.1 Exclusive consumers
296(2)
Selecting an exclusive message consumer
296(1)
Using exclusive consumers to provide a distributed lock
297(1)
12.2 Message groups
298(3)
12.3 ActiveMQ streams
301(2)
12.4 Blob messages
303(2)
12.5 Surviving network or broker failure with the failover protocol
305(4)
12.6 Scheduling messages to be delivered by ActiveMQ in the future
309(2)
12.7 Summary
311(1)
13 Tuning ActiveMQ for performance
312(19)
13.1 General techniques
313(6)
Persistent versus nonpersistent messages
313(1)
Transactions
314(1)
Embedding brokers
315(3)
Tuning the OpenWire protocol
318(1)
Tuning the TCP transport
319(1)
13.2 Optimizing message producers
319(4)
Asynchronous send
319(1)
Producer flow control
320(3)
13.3 Optimizing message consumers
323(4)
Prefetch limit
323(2)
Delivery and acknowledgment of messages
325(1)
Asynchronous dispatch
326(1)
13.4 Tuning in action
327(3)
13.5 Summary
330(1)
14 Administering and monitoring ActiveMQ
331(36)
14.1 The JMX API and ActiveMQ
332(12)
Local vs. remote JMX access
332(2)
Exposing the JMX MBeans for ActiveMQ
334(2)
Exploring broker properties using the JMX API
336(3)
Advanced JMX configuration
339(1)
Restricting JMX access to a specific host
340(1)
Configuring JMX password authentication
341(3)
14.2 Monitoring ActiveMQ with advisory messages
344(6)
Configuring advisory support
344(1)
Using advisory messages
345(5)
Conclusion
350(1)
14.3 Tools for ActiveMQ administration
350(10)
Command-line tools
350(5)
Command agent
355(2)
JConsole
357(2)
Web console
359(1)
14.4 Configuring ActiveMQ logging
360(6)
Broker logging
361(1)
Client logging
362(3)
Internal broker event logging
365(1)
14.5 Summary
366(1)
index 367
Bruce Snyder

is a veteran of enterprise software development and a recognized

leader in open source software. Bruce has experience in a wide range of technologies

including Java EE, Enterprise Messaging and Service Oriented Integration. In

addition to his role as a software consultant, Bruce is also an Apache Member, a

co-founder of Apache Geronimo and a developer for Apache ActiveMQ, Camel,

and ServiceMix. Bruce serves as a member of various JCP expert groups and is a

recognized international speaker at industry conferences. Bruce lives in beautiful

Boulder, Colorado with his family. Previously he co-wrote Beginning Spring

Framework 2 and Professional Apache Geronimo, both for Wrox Press.

Dejan Bosanac is a software developer, technology consultant and author with

deep expertise in integration and interoperability of Java and web technologies.

Dejan spent a number of years in development of complex software projects, ranging

from highly-trafficked web sites through enterprise applications. Previously he

wrote Scripting in Java for Addison-Wesley.

Rob Davies has over 20 years experience of developing high performance distributed

enterprise systems and products for telcos and finance. He is a founder of the

Apache ActiveMQ, Apache ServiceMix, and Apache Camel projects. Currently

Director of Open Source Development at IONA, Rob was also a founder and

CTO of SpiritSoft and founder and VP Product Development at LogicBlaze.