标签: poco-libraries

ACE vs Boost vs POCO

我已经使用Boost C++库很长一段时间了.我非常喜欢用于网络编程的Boost Asio C++库.然而,我被介绍到另外两个库:POCO自适应通信环境(ACE)框架.我想知道每个人的好坏.

c++ boost ace poco-libraries

91
推荐指数
7
解决办法
6万
查看次数

正确使用Poco C++ JSON来解析数据

任何人都可以告诉我Poco C++ JSON的工作原理吗?

以前我用过JsonReader和JsonToken.Poco C++库似乎没有相应的对象.

例如,我如何使用json解析器创建一个包含标记名称的JSON值的对象名称?

c++ json poco-libraries

19
推荐指数
2
解决办法
3万
查看次数

ACE vs Boost vs Poco vs wxWidgets

我在ACE,BoostwxWidgets方面拥有丰富的经验.我最近找到了POCO库.有没有人对它们有任何经验,以及它们在性能和可靠性方面与ACE,Boost和wxWidgets相比如何?

我特别感兴趣用POCO取代ACE.我无法让ACE使用带有x64目标的VS2008进行编译.我主要使用ACE_Task,所以我认为我可以用Poco的线程和消息队列替换它们.

我感兴趣的POCO的其他部分是HTTPServer,HTTPClient和LayeredConfiguration.这些库与Boost和wxWidgets中的库类似,但我尝试将wxWidgets的使用限制为GUI组件,而类似的Boost库则很难.

我对任何人可以分享关于POCO的任何经验感兴趣,无论好坏.

c++ boost ace poco-libraries

17
推荐指数
2
解决办法
1万
查看次数

构建Poco C++库的静态​​版本

任何人都可以指导我们如何构建Poco C++库的静态​​版本?

c++ poco-libraries

14
推荐指数
1
解决办法
5717
查看次数

如何正确使用POCO C++库中的OpenSSL

根据POCO助手的规格:

通过调用Poco :: Crypto :: OpenSSLInitializer :: initialize()初始化NetSSL库以及底层的OpenSSL库.应该在使用NetSSL库中的任何类之前调用​​.在创建Context或SSLManager实例时,将通过Poco :: Crypto :: OpenSSLInitializer实例或类似机制自动初始化NetSSL.但是,建议在应用程序启动时调用initializeSSL().

当我想使用时HTTPSClientSession,我是否必须首先构造一个Application对象?我如何在客户端中使用它?有人能告诉我吗?非常感谢你!

c++ https openssl poco-libraries

13
推荐指数
2
解决办法
1万
查看次数

每个连接的线程与Reactor模式(带有线程池)?

我想写一个简单的多人游戏作为我的C++学习项目的一部分.

所以我想,既然我在这里,我想做得恰到好处,而不是仅仅完成它.

如果我理解正确:Apache使用每个连接的线程架构,而nginx使用事件循环,然后为传入连接专用一个worker [x].我想nginx更明智,因为它支持更高的并发级别.对?

我也遇到过这个聪明的比喻,但我不确定它是否适用于我的情况.这个比喻似乎也很理想主义.我很少看到我的电脑以100%的CPU运行(即使打开了一个不常见的Chrome标签,Photoshop也没有同时运行)

此外,我遇到了一个SO帖子(不知何故,它从我的历史中消失了)用户询问他们应该使用多少线程,其中一个答案是拥有大约700个,甚至多达10,000个线程是完全可以接受的.不过,这个问题与JVM有关.

所以,让我们估计一个虚拟的用户群,大约有5000个用户.哪种方法应该是"最并发"的方法?

  1. 在一个线程中运行所有内容的reactor模式.
  2. 带有线程池的反应器模式(大概,你建议线程池应该有多大?
  3. 每个连接创建一个线程,然后销毁连接关闭的线程.

我承认选项2听起来对我来说是最好的解决方案,但我在所有这些方面都非常环保,所以我可能有点天真并且缺少一些明显的缺陷.而且,听起来它可能相当难以实现.

PS:我正在考虑使用POCO C++库.建议任何替代库(如boost)都可以.然而,许多人说POCO的图书馆非常干净且易于理解.所以,我最好使用一个,这样我就可以了解如何我使用的是什么样的秒.

c++ poco-libraries

13
推荐指数
2
解决办法
9697
查看次数

POCO C++ - NET SSL - 如何发布HTTPS请求

如何正确执行POST到HTTPS服务器并正确嵌入登录数据.下面的代码不会返回任何cookie(在Wininet中它会).我想知道POCO HTTP库如何处理HTTP重定向?

MyApp()
{
    try
    {
        const Poco::URI uri( "https://localhost.com" );
        const Poco::Net::Context::Ptr context( new Poco::Net::Context( Poco::Net::Context::CLIENT_USE, "", "", "rootcert.pem" ) );
        Poco::Net::HTTPSClientSession session(uri.getHost(), uri.getPort(), context );
        Poco::Net::HTTPRequest req(Poco::Net::HTTPRequest::HTTP_POST, "/login.php" );
        req.setContentType("Content-Type: application/x-www-form-urlencoded\r\n");
        req.setKeepAlive(true);

        std::string reqBody("username=???&password=???&action_login=Log+In\r\n\r\n");
        req.setContentLength( reqBody.length() );

        //Poco::Net::HTTPBasicCredentials cred("???", "???");
        //cred.authenticate(req);
        session.sendRequest(req) << reqBody;
        Poco::Net::HTTPResponse res;
        std::istream& rs = session.receiveResponse(res);
        std::string resp;

        std::vector<Poco::Net::HTTPCookie> cookies;
        res.getCookies( cookies );
    }
    catch( const Poco::Net::SSLException& e )
    {
        std::cerr << e.what() << ": " << e.message() << std::endl;
    }
    catch( const std::exception& …
Run Code Online (Sandbox Code Playgroud)

c++ https post http poco-libraries

12
推荐指数
1
解决办法
2万
查看次数

如何将Poco库(库)链接到unix环境中的程序

我在使用Poco库时遇到了麻烦.我需要一个简单的解决方案来使编译更容易.pkg-configPoco库是否有任何文件可用于我们的make文件?或任何替代解决方案?

目前我使用的是Ubuntu GNU/Linux.

我正在尝试在我的应用程序中使用poco库,但我不知道如何将Poco库链接到它.实际上我不知道应该将多少个库链接到应用程序.我想知道是否有一种简单的方法可以做到,例如使用pkg-config文件,就像我们一样gtkmm,例如:

g++ prog.cc `pkg-config --gtkmm-2.4 --libs --cflags` -o prog
Run Code Online (Sandbox Code Playgroud)

并且pkg-config程序将适当的libs和头文件附加到我们的命令中.

c++ linux ubuntu-9.10 poco-libraries

12
推荐指数
2
解决办法
1万
查看次数

如何在Visual Studio 2010中添加Poco库?

我用C++编程已经有一段时间了,现在我正在努力使用这个Poco库,我正在尝试添加一些HTTP请求.

首先,我在哪里可以添加poco文件?

其次,我已经阅读了一些关于命令提示符并运行将编译文件的脚本,但我必须给它一个参数,这是我的visual studio版本,选择是从70到110.我怎么知道我应该找到哪一个使用?

如果有人能为我提供一步一步的指导,我真的很感激.

谢谢.

c++ visual-studio-2010 poco-libraries

11
推荐指数
1
解决办法
9074
查看次数

Poco :: Net服务器和客户端TCP连接事件处理程序

我正在开始一个新项目,同时刚刚发现了Poco图书馆,我发现它非常棒.但是我有点迷失,因为例子并不多.

我有一个ServerApplication-> TCPServer-> ServerSocket + TCPServerConnectionFactory-> TCPServerconnection方法,如例子所示.我按照指示从PocoNet类继承.现在我可以将我的服务器作为服务运行,并接收传入的连接.

我想采用以下事件处理方法:在每个连接(或每个客户端)的基础上,处理事件,例如可在客户端套接字上读取的数据,客户端套接字上发生的错误(断开连接或超时),发送客户端套接字上没有错误的数据

我该怎么做呢?Poco/Foundation/Events是我正在寻找的,还是在Poco :: Net中实现了一些机制?

我已经看过Poco :: Net :: NetExpections但是当netcat连接关闭时,它们似乎不会被我的TCPServerConnection派生类抛出.

c++ networking network-programming poco-libraries

11
推荐指数
2
解决办法
2万
查看次数