微服务框架开发(一)—架构的初步需求
2016-12-02 00:00
337 查看
摘要: 今日起,开发微服务框架的第一个简单版本,并且持续更新博客。
** 随着工作时间越来越久,你会发现,技术逐步进入了一个瓶颈期,很多代码都是用之前的经验进行copy,长此以往,就注定只能成为一个平庸的程序员。要从平庸走向伟大,需要学习的东西太多了,何不将这些知识进行一次深入的总结,形成一套框架。
可能你觉得,现实世界有很多开源的框架,直接拿来用不就可以了。其实,我们开发框架的目的:1、了解框架的思想;2、开源的框架很多过于臃肿,并不一定适合公司的业务。3、做技术储备和积累,为公司提供核心技术。
近期看了一些开源的RPC框架,从今天起,我先实现一个简单的版本,第一个版本需要实现的功能定义的较为简单:(因为个人比较喜欢xmen系列的电影,所以将项目名称命名为xmen)**
1、扩展spring的配置文件。
(1)定义注册中心标签:<xmen:registry name="registry" regProtocol="zookeeper" address="127.0.0.1:2181" connectTimeout="2000"/>;
(2)定义服务协议标签:<xmen:protocol name="xmen" port="20000"/>;
(3)定义服务提供标签:
<xmen:service interface="xxx.xxx.xxx.service" class="xxx"/>或者
<xmen:service interface="xxx.xxx.xxx.service" ref="xxx"/>
(4)定义引用服务标签:<xmen:referer id="xxxService" interface="xxx.xxx.xxx.service"/>
2、读取配置文件,启动service。
分别定义4个类解析扩展的4个标签。
3、将服务注册到zk。
将服务注册到zk,并且可以扩展,便于将来添加redis等注册方式。
4、客户端远程调用服务。
通过代理调用远程服务,代理的方式也需要做到可扩展。
所需的技术:
1、注册中心:Zookeeper
2、序列化:Protobuf
3、传输:Netty
4、代理:JDK、Cglib
5、负载均衡:Random、RoundRobin
6、配置文件:Extend Spring(扩展spring)
** 随着工作时间越来越久,你会发现,技术逐步进入了一个瓶颈期,很多代码都是用之前的经验进行copy,长此以往,就注定只能成为一个平庸的程序员。要从平庸走向伟大,需要学习的东西太多了,何不将这些知识进行一次深入的总结,形成一套框架。
可能你觉得,现实世界有很多开源的框架,直接拿来用不就可以了。其实,我们开发框架的目的:1、了解框架的思想;2、开源的框架很多过于臃肿,并不一定适合公司的业务。3、做技术储备和积累,为公司提供核心技术。
近期看了一些开源的RPC框架,从今天起,我先实现一个简单的版本,第一个版本需要实现的功能定义的较为简单:(因为个人比较喜欢xmen系列的电影,所以将项目名称命名为xmen)**
1、扩展spring的配置文件。
(1)定义注册中心标签:<xmen:registry name="registry" regProtocol="zookeeper" address="127.0.0.1:2181" connectTimeout="2000"/>;
(2)定义服务协议标签:<xmen:protocol name="xmen" port="20000"/>;
(3)定义服务提供标签:
<xmen:service interface="xxx.xxx.xxx.service" class="xxx"/>或者
<xmen:service interface="xxx.xxx.xxx.service" ref="xxx"/>
(4)定义引用服务标签:<xmen:referer id="xxxService" interface="xxx.xxx.xxx.service"/>
2、读取配置文件,启动service。
分别定义4个类解析扩展的4个标签。
3、将服务注册到zk。
将服务注册到zk,并且可以扩展,便于将来添加redis等注册方式。
4、客户端远程调用服务。
通过代理调用远程服务,代理的方式也需要做到可扩展。
所需的技术:
1、注册中心:Zookeeper
2、序列化:Protobuf
3、传输:Netty
4、代理:JDK、Cglib
5、负载均衡:Random、RoundRobin
6、配置文件:Extend Spring(扩展spring)
相关文章推荐
- HL AsySocket 服务开发框架 - 总体思路与架构
- .NET框架程序设计--NET框架开发平台的体系架构概览(FCL,CTS,CLS)
- [转载]学习笔记《.NET框架程序设计(修订版)》--第一章 Microsoft .NET框架开发平台体系架构(1)
- Web开发框架中的架构模式比较(一)
- 纪念日:服务构件环境(SCE)挑起企业级架构的栋梁,下一代的应用开发模式日渐清晰
- 构架、框架、设计模式之间的关系简述-开发频道-架构-天极网
- .net框架程序设计 读书笔记(二)---- .net 框架开发平台体系架构
- [黑莓开发之路][00][BlackBerry平台架构概述][04][BlackBerry Internet Service][黑莓网络服务]
- Web开发框架中的架构模式比较(二)
- 纪念日:服务构件环境(SCE)挑起企业级架构的栋梁,下一代的应用开发模式日渐清晰
- 大家提提意见 2个小领导、4个开发人员、3种数据库、2种开发技术、3种技术架构、3个开发思想为3个项目服务
- [转载]学习笔记《.NET框架程序设计(修订版)》--第一章 Microsoft .NET框架开发平台体系架构(2)
- 架构Web Service:基于Web服务的应用、解决方案和开发平台
- web开发,是个非常敏捷的过程,变化随时都在产生,用户需求千变万化,许多方面偶然性非常高,较之软件开发,希望用一个架构规划以后的所有设计,是不现实的
- 纪念日:服务构件环境(SCE)挑起企业级架构的栋梁,下一代的应用开发模式日渐清晰
- .NET框架程序设计--NET框架开发平台的体系架构概览(FCL,CTS,CLS)
- 纪念日:服务构件环境(SCE)挑起企业级架构的栋梁,下一代的应用开发模式日渐清晰
- 纪念日:服务构件环境(SCE)挑起企业级架构的栋梁,下一代的应用开发模式日渐清晰
- Web开发框架中的架构模式比较(三)
- 大家提提意见 2个小领导、4个开发人员、3种数据库、2种开发技术、3种技术架构、3个开发思想为3个项目服务