
系统架构
xungen
我问佛:人为何而生?佛曰:寻根。
展开
-
cppweb 1.0.3发布,基于C++开发的web服务器
cppweb是一个基于C++开发的 WEB 服务器,支持C/C++、Python、Java等多语言混合开发WEB应用。cppweb同时也是一个跨平台的微服务开发框架,通过两个核心组件webrouter与webserver提供微服务系统中的接口路由网关、服务注册中心、业务服务容器、定时任务调度中心以及接口文档平台等功能,cgi应用只是其中业务服务容器的部分功能,我们的目标不是实现一个最好cgi容器,而是打造一个统一web开发和传统服务开发的框架。基于cppweb的微服务集群框架如下图所示,图中绿色部分原创 2020-10-31 17:07:42 · 821 阅读 · 0 评论 -
cppweb框架实现代码即接口文档
cppweb服务接口文档平台在cppweb框架中每个webserver业务服务都可以访问/app/workspace/pub/apidoc.htm页面来查看自身的接口文档,只要你在接口代码最后面添加如下代码,webserver就会帮你自动生成接口文档,完全做到代码与文档的同步,你也不用花精力单独维护接口文档。我们的cppweb框架已开源:https://gitee.com/xungen/cppweb//-----------------------------------------------.原创 2020-09-15 21:32:19 · 755 阅读 · 0 评论 -
基于C++11开发的web服务器cppweb开源了
功能说明作者初衷是编写一个web框架支持C++开发cgi程序,于是cppweb诞生了。 作者希望cppweb是一个大一统的框架,即可用于传统服务端编程也可用于web编程,作者希望http协议能做的更多,框架包括以下两个核心服务: webserver:业务服务容器,通过配置也可升级为服务注册中心与定时任务调度中心。webrouter:接口路由网关服务,对外提供统一的流量入口,主要负责请求分发以及黑白名称配置。 cppweb在读数据采用epoll网络模型,以任务队列的方式处理具体请求,回包也原创 2020-09-12 16:52:09 · 1776 阅读 · 1 评论 -
一个简单的定时任务调度中心设计方案
在日常开发中除了给前端开发接口,还要写一些定时处理任务,比如一个活动需要每天定时给所有用户派发奖励。一个成熟服务框架需要一个全局的定时任务调度中心,通过定时任务调度中心可以查看服务有哪些定时任务以及定时任务的执行情况,对于执行失败的定时任务可以手动执行等。我们公司的微服务架构没有定时任务调度中心,每个服务通过类似crontab定时任务配置来管理自身的定时任务,为了保证每个服务高可用,我们给每个服务都部署了两个节点,对于一些不能并发执行的定时任务我们往往需要给定时任务加一个分布式锁,有时甚至需要修改服务的c原创 2020-06-20 16:10:40 · 1943 阅读 · 0 评论 -
Nginx实现动态负载均衡
为什么用nginxnginx是经过实践证明的、安全稳定的反向代理服务器,淘宝、新浪等大型互联网公司都有nginx的身影。nginx经过线上各种网络环境验证,能够帮你隔离各种复杂的网络环境,轻松支持10000+的同时在线连接数,同时拥有多种成熟的负载均衡策略,能够方便横向拓展后端服务。今天我们说一说nginx负载均衡策略。nginx有以下几种负载均衡策略1、基于轮询方式轮询是最基本的配...原创 2019-05-24 15:43:08 · 2535 阅读 · 0 评论 -
微服务架构简介
什么是微服务架构微服务架构是指按业务与数据来源将统一的系统拆分成若干相对独立自治的子服务,各服务只实现特定功能(如登录服务只实现登录相关的逻辑),服务以接口的形式为应用或其他服务提供功能与数据(如订单服务调用登录服务的检查登录态接口来判断用户是否登录),这种按业务拆分系统的解决方案称之为微服务架构。微服务架构的特点微服务是指开发一组小型的但有业务功能的服务,每个服务都有自己的处理...原创 2019-05-21 15:40:08 · 616 阅读 · 0 评论 -
微服务架构分析
什么是微服务架构微服务是指按业务与数据将统一的系统拆分成若干相对独立自治的子服务,各服务只实现特定功能(如登录服务只实现登录相关的逻辑),服务以接口的形式为应用或其他服务提供功能与数据(如订单服务调用登录服务的检查登录态接口来判断用户是否登录),这种按业务拆分系统的解决方案称之为微服务架构。微服务架构的特点微服务是指开发一个组小型的但有业务功能的服务,每个服务都有自己的处理和轻量...原创 2019-05-22 14:23:40 · 998 阅读 · 0 评论