- 博客(23)
- 资源 (2)
- 收藏
- 关注
原创 如何制作牛肉虾
食材:牛肉2斤基围虾1斤四川印象 大红袍1袋配菜:胡萝卜、黄瓜、土豆制作过程:1、水烧沸腾,牛肉丢进去,逼出血水2、拿出牛肉,洗锅,放油,油烧开后,将牛肉炒2~3分钟3、加入开水,至沸腾;再加入大红袍,最小火炖1小时4、大火,加入开水,至沸腾;放配菜和基围虾 ,5分钟5、起锅,放到火锅盆中
2016-03-20 13:42:43 542
原创 订单水平拆库项目
1、调研 数据分析,接口分析 where条件分析2、方案确定, 什么维度拆分,多少台机器3、方案实施 1) id生成策略2)性能测试 TCP Copy引流测试(时间问题)3)数据同步工具 - 字符集utfmb4 占4个字节的生僻字问题4)商家维度分页性能问题4、上线方案 1)分布上线,先上读接口2)整体上线 - 上线清单 ,回滚预案3
2016-03-19 14:28:59 363
原创 Zookeeper选举过程
假设有5台机器znode状态:looking、following、leading 、observing(提高读取效率)初始化:1、服务器d为1启动,广播,没有应答,此时处于looking状态2、服务器id为2启动,与1交换,胜出;由于选举没有超过半数,此时处于looking状态3、服务器id为3启动根据,前面的理论,被选举为leader4、服务器id为4、5
2016-03-19 14:16:30 416
原创 spring分布式事务应用
开源分布式事务处理框架:jotm atomikosjotm配置:spring声明一个jotm事务管理器,数据源配置jotm底层是通过savepoint实现,需要看数据库本身是否支持XA分布式事务
2016-03-19 11:36:44 239
原创 SQL优化
大的角度减少调用 : 批量+缓存主备库拆分小的角度1、索引group by ,order by 加索引字段别用函数、别运算default值 null不走索引like ‘%ss’不要*2、update不要update全字段3、事务避免大事务4、大数据先分页、再join少用临时表少用blo
2016-03-16 14:42:06 232
原创 Mysql 存储引擎有哪些
innodb oltpmyisam insert select专用memory 内存ndb 分布式archive 可压缩索引区别:btree索引hash索引聚集索引消耗:内存消耗磁盘消耗事务控制:事务数据、索引缓存批量插入更新mvcc
2016-03-16 11:26:23 338
原创 系统变慢怎么办
1、数据库 【慢sql优化、数据迁移、配置提升、水平垂直拆分】2、应用服务【缓存、jvm、代码层面等】3、前端web【js css合并 、cdn、http合并】4、负载均衡5、网络设置6、机器配置7、木马 病毒
2016-03-15 15:57:53 233
原创 后台系统拆分
做好的三件事情1、领域划分:粒度【会员营销 or 营销】,分层【基础服务、应用服务、UI】2、前段框架替换 sitemesh -> iframe + ace ,尽量对原来页面影响范围小3、sso单点登陆,jsonp跨域访问 ;编写sso组件,通过http+sign保证安全性
2016-03-15 15:44:46 1132
原创 hessian总结
hessian:远程调用框架,基于http性能:socket > netty > hessian >= dubbo > spring mvc序列化:hessianinput hessianoutput,性能优于java序列化工具,去掉类一些不必要序列化的东西,复杂类可能有些问题
2016-03-15 11:27:10 305
原创 JAVA NIO汇总
JAVA NIO原理:1、一个专门的线程监听IO事件,并负责分发 -- selector2、事件驱动机制,事件来了才触发 ,4个 事件 channel.register3、线程通讯,wait notify等方式通讯 , 节约开销组件:channel : filechannel datagramchannel socketchannel serverchannel
2016-03-15 11:04:11 240
原创 JAVA类加载机制
类初始化条件:1、new getstatic putstatic invokestatic指令2、反射3、子类触发父类4、main方法的类类加载过程:1、加载:类变成二进制字节流,转化为方法区的运行时的数据结构,堆中生成一个代表这个类的对象2、验证:文件格式、接口、父子类、符号引用等3、初始化常量值4、解析:字段、方法、类等5、收集static块,放
2016-03-14 23:11:40 238
原创 JAVA AOP实现方式
JAVA AOP实现方式1、动态代理 :需要接口、会影响点性能 proxy.newProxyInstance(classloader, interface, handle) ,带缓存 -- 生成子类2、动态字节码生成:cglib 需要asm.jar,Enhancer.setSuperClass setCallback ,final方法无法处理 -- 生成子类3、自
2016-03-14 22:40:35 281
原创 新生代转移到老年代的触发条件
新生代转移到老年代的触发条件:1、长期存活的对象2、大对象直接进入老年代3、minor gc后,survivor仍然放不下4、动态年龄判断 ,大于等于某个年龄的对象超过了survivor空间一半 ,大于等于某个年龄的对象直接进入老年代
2016-03-14 22:22:36 4227
原创 JAVA GC总结
分代收集算法年轻代:Serial ParNew Parallel老年代:Serial Old CMS Parallel OldParNew并发 - 响应时间Parallel并行 - 吞吐量大CMS收集过程:1、初始标记 - stop the world2、并发标记3、重新标记 - stop the world4、并发
2016-03-14 22:13:42 367
原创 计算机网络分层
五层:应用层【http ftp dns dhcp soap ssh】传输层【tcp udp】网络层【ip icmp】数据链路层【wifi 令牌环】物理层【以太网卡 光纤】七层:应用层表示层会话层传输层网络层数据链路层物理层
2016-03-14 17:44:16 318
原创 TCP与UDP区别
TCPUDP连接面向连接非连接可靠性可靠不可靠数据量可大小传输数据慢快TCP 3次握手:客户端:syn服务端:syn ack客户端:ackTCP窗口技术流量控制【receive window】、拥塞控制【congestion window】
2016-03-14 17:36:53 281
原创 synchronized与reentrantLock区别
lock概述:reentrant 翻译:可重入,折返 Lock lock = new ReentrantLock();//默认使用非公平锁,如果要使用公平锁,需要传入参数trueLock接口有3个实现它的类:ReentrantLock、ReetrantReadWriteLock.ReadLock和ReetrantReadWriteLock.WriteLock,即重入锁、读锁和写锁
2016-03-14 15:09:34 294
转载 Mybatis概述
参考:http://blog.csdn.net/rootsuper/article/details/8537498Mybatis原理:1、根据sqlMapConfig.xml config.xml配置生成sqlSessionFactory2、sqlSessionFactory获取SqlSession 3、根据sqlId查找MappedStatement,根据入参解析Mapped
2016-03-14 14:27:52 239
原创 Spring mvc工作原理
Spring mvc核心组件:DispatcherServlet工作原理:1、DispatcherServlet根据 url 和 HandlMapping 找到handler2、handler通过业务service返回ModelAndView3、ModelAndView 通过ViewResovler 组装到 jsp 等
2016-03-14 14:04:37 322
原创 【学习笔记】CSS概述
CSS 层叠样式表Html - 结构内容CSS - 形式Xhtml比html严格 不论是标记还是属性CSS导入方法:1、行内式2、内嵌式3、导入式(独立文件)4、链接式(独立文件、页面渲染更加)
2016-03-13 15:39:49 298
原创 【学习笔记】计算机网络概述
定义: 一组自治计算机互联的集合应用的学科:拓扑学 分层原理三种分层:OSI/RM TCP/IPIEEE802里程碑:1969 ARPA 网70年代 Ethernet80年代 ISO89 internet普及93 IETF ipv695 ipv6完成
2016-03-13 14:48:13 261
SpringCloudDemo.rar
2020-01-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人