All Projects → apache → Activemq Cpp

apache / Activemq Cpp

Licence: apache-2.0
Apache ActiveMQ CPP

Programming Languages

python
139335 projects - #7 most used programming language
java
68154 projects - #9 most used programming language
c
50402 projects - #5 most used programming language
ruby
36898 projects - #4 most used programming language
perl
6916 projects
csharp
926 projects
cplusplus
227 projects

Labels

Projects that are alternatives of or similar to Activemq Cpp

messaging-replication
eXist-db JMS based messaging and document replication extension (JMS based)
Stars: ✭ 14 (-81.08%)
Mutual labels:  activemq
Voj
A cross-platform online judge system based on Spring MVC framework and ActiveMQ.
Stars: ✭ 385 (+420.27%)
Mutual labels:  activemq
Activemq
高性能消息监控无服务器,使用ActiveMQ消息中间件实现,使用MQ、redis、nlog 等技术实现
Stars: ✭ 13 (-82.43%)
Mutual labels:  activemq
daf-kylo
Kylo integration with PDND (previously DAF).
Stars: ✭ 20 (-72.97%)
Mutual labels:  activemq
Springboot Learning
基于Gradle构建,使用SpringBoot在各个场景的应用,包括集成消息中间件、前后端分离、数据库、缓存、分布式锁、分布式事务等
Stars: ✭ 340 (+359.46%)
Mutual labels:  activemq
Activemq Artemis
Mirror of Apache ActiveMQ Artemis
Stars: ✭ 685 (+825.68%)
Mutual labels:  activemq
crowd-admin
crowd-admin是一个基于Spring,Shiro,Redis/ehcache,Mybatis的通用后台权限管理系统,这里推荐本人另一个基于sprinboot的单点登录系统
Stars: ✭ 51 (-31.08%)
Mutual labels:  activemq
Springboot
SpringBoot 整合各类框架和应用
Stars: ✭ 54 (-27.03%)
Mutual labels:  activemq
Highdsa
2018年本科毕设项目,已更新所有开发和部署文档。基于Dubbo、SSM、Shiro、ELK、ActiveMQ、Redis等实现的一套高可用、高性能、高可扩展的分布式系统架构,实现可支持业务的基础公共服务,API使用Restful风格对外暴露。已经实现的包括:发送邮件服务、FastDFS文件存储服务、ELK实时日志查询服务、Redis缓存服务、Mybatis数据库、阿里短信推送、Goeasy消息推送、Druid监控、ActiveMQ消息队列、shiro权限认证、cas单点登录、权限配置web系统、移动端后台系统。持续更新中......
Stars: ✭ 385 (+420.27%)
Mutual labels:  activemq
Easybus
Easy integration with multiple messaging frameworks including RabbitMQ, Oracle AQ, ActiveMQ
Stars: ✭ 8 (-89.19%)
Mutual labels:  activemq
event-driven-microservices
No description or website provided.
Stars: ✭ 15 (-79.73%)
Mutual labels:  activemq
Zheng
基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构,提供整套公共微服务服务模块:集中权限管理(单点登录)、内容管理、支付中心、用户管理(支持第三方登录)、微信平台、存储系统、配置中心、日志分析、任务和通知等,支持服务治理、监控和追踪,努力为中小型企业打造全方位J2EE企业级开发解决方案。
Stars: ✭ 16,163 (+21741.89%)
Mutual labels:  activemq
Activemq
Development repository for activemq Chef Cookbook
Stars: ✭ 19 (-74.32%)
Mutual labels:  activemq
dgiot-dashboard
DG-IoT平台行业应用扩展插件 DG-IoT for application plugin
Stars: ✭ 229 (+209.46%)
Mutual labels:  activemq
Tools
C# 工具箱,提供Socket(TCP、UDP协议)、Redis、activemq、数据库访问等技术的封装实现
Stars: ✭ 34 (-54.05%)
Mutual labels:  activemq
akka-microservice
Example of a microservice with Scala, Akka, Spray and Camel/ActiveMQ
Stars: ✭ 45 (-39.19%)
Mutual labels:  activemq
Jboot
一个优雅的微服务框架,SpringCloud 之外的另一个选择,已经使用在用户量过亿的商业产品上,有超过1000家公司在使用Jboot做极速开发...
Stars: ✭ 655 (+785.14%)
Mutual labels:  activemq
Goods Seckill
高性能电商秒杀解决方案,redis预减库存,消息队列异步下单,订单防重,订单防刷,秒杀接口地址隐藏,数学公式验证码
Stars: ✭ 61 (-17.57%)
Mutual labels:  activemq
Spring Jms
Spring JMS Tutorials
Stars: ✭ 42 (-43.24%)
Mutual labels:  activemq
Online Bookstore
📓网上书店,SSM 架构练手项目。Shiro 做权限管理,Redis 做书籍缓存,ActiveMQ 做异步交易,Lucene 做全文搜索
Stars: ✭ 23 (-68.92%)
Mutual labels:  activemq

ActiveMQ CPP Library

ActiveMQ CPP is a messaging library that can use multiple protocols to talk to a MOM (e.g. ActiveMQ).

1 Dependencies

There are several dependencies that need to be met in order to build and install ActiveMQ-CPP on a Unix type system, the short list is shown below, read the sections that follow for more detailed information. On Windows you will not need the Auto Tools since the library is built using Microsft's Visual Studio product.

Tool Recommended Version

autoconf >= 2.60 automake >= 1.10 libtool >= 1.5.24 APR >= 1.3* APR-Util >= 1.3* CPPUnit >= 1.10.2* libuuid >= ?* openssl >= 1.0.2

  • Requires that the Development package also be installed.

1.1 libuuid

The build requires the libuuid library that is part of the e2fsprogs package and is available from http://e2fsprogs.sourceforge.net/ which is not always installed by default.

On Fedora, type the following:

sudo yum install e2fsprogs-devel

On Debian/Ubuntu, type the following:

sudo apt-get install uuid-dev

1.2 CppUnit

The package contains a complete set of CppUnit tests. In order for you to build an run the tests, you will need to download and install the CppUnit suite. See http://cppunit.sourceforge.net/cppunit-wiki

On Fedora, type the following:

sudo yum install cppunit cppunit-devel

On Debian/Ubuntu, type the following:

sudo apt-get install libcppunit-dev

Make sure that the paths to the installed CppUnit library and includes are visible in your current shell before you try building the tests.

Windows users will need to build the CppUnit library using the CPPUnit MSVC project files. A discussion of the build process can be found on the CPPUnit wiki under:

http://cppunit.sourceforge.net/cppunit-wiki/BuildingCppUnit1

This covers both MSVC along with many other platforms and tool suites. The included Visual Studio projects are configured with the assumption that you will configure Visual Studio with the locations of the Platform SDK and the CPPUnit and APR libraries and headers.

1.3 APR and APR Util

The build requires the APR library and the APR-Util. These libraries can be obtained from the APR site at: http://apr.apache.org/ See the documentation there on how to build these libraries for your platform. On many Unix system the libraries can be installed using the systems package installer.

The Library has been tested using version v1.3 and higher of the APR libs, the older 0.9 version will definitely not work with this library.

Many of the Unix type OS'es currently shipping include APR 1.2.x and APR-Util 1.2.x, this implies that you will need to build and install APR from the source download at Apache.

1.4 GNU Build System (for building on Unix/Linux/OS X)

To Generate the ./configure script use to create the Makefiles, you need the following software installed:

Tool Recommended Version

autoconf >= 2.60 automake >= 1.10 libtool >= 1.5.24

On Debian/Ubuntu, multiple versions of autoconf and automake are available in separate packages. If you have multiple versions of autoconf or automake installed on your system, you may have to configure the versions to use using /usr/sbin/update-alternatives.

2 Building on Unix/Linux/OS X

This assumes you have all of the project dependencies installed. We're now ready to create the configure script. To do this, run:

./autogen.sh

This should be run the first time and any time you change configure.ac or any of the Makefile.am files.

-----------------------------------------------------------------------
|MacOS X Note:                                                        |
| Make sure to set the LIBTOOLIZE environment variable to point to    |
| /usr/bin/glibtoolize for the build to complete successfully. Below  |
| is an example:                                                      |
|                                                                     |
| $ export LIBTOOLIZE=/usr/bin/glibtoolize                            |
|                                                                     |
| If you do not use this environment variable you will encounter an   |
| error stating:                                                      |
|                                                                     |
| Can't exec "libtoolize": No such file or directory at               |
| /opt/local/share/autoconf/Autom4te/FileUtils.pm line 290...         |
-----------------------------------------------------------------------

-----------------------------------------------------------------------
|Solaris 10 Note:  CppUnit might not build until you correct the file |
|  libstdc++.la to contain the correct data, see this discussion:     |
|  http://forum.sun.com/jive/thread.jspa?threadID=73150               |
|  Also you must pass --enable-shared=no for Solaris GCC builds       |
|  For Solaris builds using the Sun Compiler you must set the env     |
|  values CC and CXX to point to the cc and CC commands respectively. |
-----------------------------------------------------------------------

The configure script will customize the way the software is built and installed into your system along with detecting the available libraries that have been installed. To use the default configuration just run:

./configure

For more help on how to customize the build configuration, run:

./configure --help

Once the configure script has run successfully, you are ready to build. Run:

make

This will build all of the core ActiveMQ CPP source code. To build and install the code into the system directories, run:

make install

You will have to become the superuser in order to be able to install the files.

3 Doxygen

To generate the Doxygen documentation for the project, just run:

make doxygen-run

4 Running Tests

4.1 Unit Tests

In order to build and run the suite of unit tests, run:

make check

This will verify that the library is functioning correctly on the target platform. In addition, it will generate the integration tests binary.

4.2 Integration Tests

The library also contains a set of tests that are run against a real AMQ broker. These allow you to validate this distribution of ActiveMQ CPP against your broker. Running these without a broker will result in failed tests. The tests currently hard-code the broker url to be tcp://localhost:61613 for Stomp and tcp://localhost:61616 for Openwire.

The integration tests are built via "make check". To run them, first start a broker and then

cd src/test-integration ./activemq-test-integration

This will take quite some time to complete, so be patient. It is recommended that you restart the broker between successive runs of the integration tests.

5 Example

There are example applications that ship with the distribution in src/examples. The examples are compiled by default with the "make" command on Unix systems. Only one sample is included in the Visual Studio projects supplied, the others can be easily added by examining the settings of the one supplied.

6 Notes for Windows users

We do not support using the GNU compiler on Windows, using the Cygwin package or the MinGW platform, several issues with sockets and threading were found to exist when trying to use these solutions.

However we do support using the MSVC compiler on Windows.

There are a couple or things that you will need to setup to ensure that the MSVC compile succeeds.

  • When linking your application to the DLL version of the ActiveMQ-CPP library you must link your app the the same runtime version that the DLL is linked to, otherwise your application will cause heap corruption when you delete objects that are created in the ActiveMQ-CPP DLL's heap.

  • You need to download and install the Platform SDK if you don't have it installed already. On machines where you intend to use the built libraries and executable you will also need to install the MS Redistributable for the version of Visual Studio which you used to build the library.

  • Ensure that the path to you MSVC install is set in the PATH env variable. You can test this by typing cl.exe at the command line, if you get an error complaining that its not found, then you'll need to fix your PATH.

  • The Project files reference the CPPUnit libraries for the Integration and Unit tests builds. In order for these to build correctly you must either configure the global settings in Visual Studio for include and library folders or add new settings to each of the projects in the solution to point to these locations.

  • The Project files reference the APR libraries for the Integration and Unit tests builds. In order for these to build correctly you must either configure the global settings in Visual Studio for include and library folders or add new settings to each of the projects in the solution to point to these locations.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].