图像处理服务器
曾柯
keep learning
展开
-
高性能图像处理服务器的实现(三)reactors in threads服务器模式中代码流程详解
在我的GitHub中上传了关于高性能图像处理服务器的网络库方面的代码,网址为:https://github.com/zk3326312/ZK_ImageServer/tree/master/net,整个框架为reactors in threads的框架,总体来说就是由一个主reactors作为接受器,当有新的client连接上时将连接挂载在sub reactors上,总体框架为:下面就以一...原创 2018-02-09 16:44:46 · 654 阅读 · 0 评论 -
高性能图像处理服务器的实现(一)高性能异步日志
日志是调试一个服务器的最好方法了,在大型的服务器项目中,如果一直日志的输出总是有问题,或者输出的信息含糊不明,那么,你的调试过程将会非常痛苦,如果是普通的内存泄漏或者越界访问,或者TCP通信过程中的一些问题,那么通过errno也许还能帮你一下,但如果是跑了一段时间的服务器突然宕机,那么定位问题将会非常的困难。由此可见,一个高效安全且保证输出所有信息(我这里的保证输出所有信息表示即使服务...原创 2018-02-07 21:58:54 · 1766 阅读 · 0 评论 -
高性能图像处理服务器的实现(二)服务器的并发解决方案的选择
传统Unix并发的解决方案(为每一个新的连接fork()一个子进程)比较适合以下的情况:并发量很小并且计算的工作量远大于一个fork()的开销,但这种方案情况比较适合长连接,不太适合短连接,并发量大时这种模式也无法满足,因此不太适合本项目。对传统Unix并发方案差的一种小改进是thread per connection(即为每一个连接分配一个线程),这种方案比起上一种在一些场景下会好一些,比如th...原创 2018-02-08 18:54:39 · 1550 阅读 · 0 评论 -
高性能图像处理服务器的实现
高性能图像处理服务器的实现 最近打算写一个高性能的图像处理服务器,功能大致为单帧图像或多帧图像的超分辨率恢复,并且支持远端图像存储到服务器端,支持高并发情况下的高效处理。 大致构思了一下思路,决定服务器采用c++编写,具体架构参照陈硕大大提倡的reactors in threads的思想,然后图像传输方式以http的方式传输,本地数据库采用MySQL(可能内存数据库会选择用Redis...原创 2018-02-01 16:48:35 · 3303 阅读 · 0 评论 -
高性能图像处理服务器的实现(四)数据库类的编写
服务器的数据库部分逻辑上并不复杂,所做的就是连接数据库,并对数据库做增删改查,数据库类MysqlDB在代码的database文件夹中,实现的基本功能为如下四个接口:sqlInsert(),sqlDelete(),sqlModify(),sqlQuery()对应的增删改查,还有一点基本功能比如根据用户名获取用户的存储路径,密码等函数,都很简单,下面来说下服务器端的数据库表单设计。 ...原创 2018-02-24 23:31:58 · 358 阅读 · 0 评论 -
高性能图像处理服务器的实现(五)服务器的逻辑编写
在我之前的博客高性能图像处理服务器的实现(三)reactors in threads服务器模式中代码流程详解中说到了reactors模式的好处,就是可以轻松的将业务逻辑抽象出来,完全不会影响代码的整体框架,整个图像处理服务器封装在server中的ImageServer类中(server中的echo类是个简单的echo服务器,用来测试服务器的功能是否正常以及测试高并发状态下是否能正常连接...原创 2018-02-24 23:55:08 · 742 阅读 · 0 评论