Skip to content

lolandkidtress/soa_framework_agg

Repository files navigation

#服务发现与调用框架

##FEATURE

  • 1.agent+javasist实现的代码注入功能(性能监控)
  • 2.kafka的异步消息
  • 3.AVRO RPC服务发现和调用
  • 4.HTTP服务发现和调用

##Required

  • zookeeper (3.4.6)
  • kafka 0.8.* (0.9+ 不支持)
  • JDK1.8+(基于1.8.0.25开发测试)

##Modules

  • soa_kafka:kafka的生产和消费(高级API)
  • soa_db:数据库操作
  • soa_http:http调用实现(okhttp3)
  • soa_avro:AVRO客户端和服务器端
  • soa_agent:代码注入,需要单独打包和调试(agent方式)
  • soa_tools:工具类
  • soa_discovery:服务发现
  • soa_filter:拦截器(降级,流量等)
  • soa_rpc:RPC调用(http和avro的入口)
  • soa_monitor:监控(nanohttp)

##HOW TO RUN

  • 1.git clone
  • 2.cd soa_framework_agg #(重要) soa_agent需要单独打包编译,应当以独立jar包形式导入项目中
  • 3.cd ./soa_agent
  • 4.mvn clean compile package install
  • 5.cd ..
  • 6.mvn clean compile package install
  • 7.cd ./soa_demo
  • 8.mvn compile package
  • 9.java -jar ./target/soa_demo.jar

and see the console or http://localhost:9093/monitor/providers 中查看服务提供节点信息 http://localhost:9094/monitor/providerTreeMap 中查看服务提供节点Hash环的分布情况

##FAQ/CONTACT 在使用中有任何问题,欢迎反馈给我,可以用以下联系方式跟我交流

  • 邮件(lolandkidtress#gmail.com, 把#换成@)
  • QQ: 248954468

##TODO:

  • 配置中心
  • 服务地址IP路由
  • 记录调用链及方法的执行时间
  • zk/kafka版本升级

##Versions

  • Release1.0.0R170117:初版

  • Release1.0.1R170122:添加了限流和服务降级

  • Release1.1.0R170204:添加avro连接池

About

分布式框架

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published