2015年4月份至今,我开始参与公司云平台设计与开发,为了巩固知识点,整理一些项目中用到的技术,以下是简要的介绍:
项目要求及特点: 高可用,高并发,多线程,大数据量,多节点
开发语言: java
设计工具: VISIO,EA,WORD
=========中间件==========
Karaf osgi容器,bundle可插拔,模块化开发
ActiveMq 消息队列中间件
Dubbo 阿里开源服务框架,本项目主要用于RPC调用
Zookeeper 分布式节点数据配置、状态监控
Coherence Oracle网格数据库(内存数据库,可增加机器自动水平扩展)
=========其他==========
maven 项目构建
java.concurrent包 多线程并发工具包(jdk1.5后)
log4j2 日志管理(DEBUG,INFO,ERROR,FATAL)
内存缓存 根据业务框架设计编码实现哪些数据需要进行内存缓存以便执行过程中直接从内存读取
jvm 了解垃圾回收机制(新生代、老年代、持久代),及如何排除内存泄露问题
shell 编写实用的shell脚本,不是很复杂的基本能写,这个是弱项,以后需要提升
异常处理 抛出异常,捕获异常,定义异常类别,异常编码,如果在业务系统中进行异常设计,考虑各种情况的异常发生
性能测试 排查节点运行中每个进程的性能(cpu,内存占用)
在以后的日子里我将把项目中用到的知识点或者说是技术点进行梳理说明,有自己的一些见解,也有一些实例代码,毕竟项目设计的知识点太多,所以不能一次性写出来,估计要花些时间整理,本篇只写了个概要。