共 175 篇文章 |
|
UML中的类图及类图之间的关系 统一建模语言简介统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标准。根据类与类之间的耦合度从弱到强排列,UML 中的类图有以下几种关系:依赖关系、关联关系、聚合关系、组合关系、泛化关系和实现关系。... 阅16 转0 评0 公众公开 22-02-07 18:14 |
线上服务CPU100%问题快速定位实战。top -Hp 10765 ,显示一个进程的线程运行信息列表键入P (大写p),线程按照CPU使用率排序。如上图,进程10765内,最耗CPU的线程PID为10804.打印进程堆栈通过线程id,过滤得到线程堆栈。如上图,找到了耗CPU高的线程对应的线程名称“AsyncLogger-1”,以及看到了该线程正在执行代码的堆栈。 阅71 转0 评0 公众公开 20-04-22 08:10 |
ELK日志分析系统简介前言。这个时候ELK系统出现了,ELK是elasticsearch、Logstashh和Kibana三个系统的首字母组合。在需要收集日志的所有服务上部署logstash,作为logstash agent(logstash shipper)用于监控并过滤收集日志,将过滤后的内容发送到Redis,然后logstash indexer将日志收集在一起交给全文搜索服务ElasticSearch,可以用ElasticSea... 阅516 转0 评0 公众公开 20-04-05 21:07 |
秒杀超卖解决方案方案一:redis事物处理。我们可以使用redis中的监听(watch)方法,去监听库存数量,一旦库存数量在其他客户端发生改变,后续操作则会失败。watch key1 key2 监听key1 key2有没有变化,如果有变, 则事务取消方案二:redis分布式锁。expire(key,30) 方案三:redis队列(rpoplpush的安全队列)把每一件商品都lpush到red... 阅208 转2 评0 公众公开 20-03-27 14:07 |
[原]Dubbo服务权限控制 Dubbo服务权限控制。PROVIDER)public class ServiceAuthorization implements Filter { private Logger log = Logger.getLogger(ServiceAuthorization.class);-conf -META-INF -dubbo com.alibaba.dubbo.rpc.> invoker, Invocation invocation) throws RpcException { Properties properties = new Properties();注意,这里的sid必须与服务... 阅1289 转0 评0 公众公开 20-03-26 13:33 |
此时分为两种情况:当前线程是第一个获取读锁的线程,此时由于第一个获取读锁的线程已经通过firstReader及firstReaderHoldCount两个变量进行存储,则仅仅需要将firstReaderHoldCount加1即可;当前线程不是第一个获取读锁的线程,则需要使用readHolds进行存储,readHolds是ThreadLocal的子类,通过readHolds可获取当前线程对应的HoldCounter类的... 阅97 转0 评0 公众公开 20-03-24 23:43 |
提高Tomcat的性能可以分为两个方向。在conf/ tomcat-users.xml下添加用户:<role rolename=''''''''manager''''''''/><role rolename=''''''''manager-gui''''''''/><role rolename='... 阅93 转0 评0 公众公开 20-03-18 13:08 |
如何保证Kafka不丢失消息?我哭了!我们发送的消息会被发送到 leader 副本,然后 follower 副本才能从 leader 副本中拉取消息进行同步。多个 follower 副本之间的消息同步情况不一样,当我们配置了 unclean.leader.election.enable = false 的话,当 leader 副本发生故障时就不会从 follower 副本中和 leader 同步程度达不到要求的副本中选择... 阅5527 转19 评0 公众公开 20-03-16 09:55 |
/** * 枚举中ordinal()方法的使用 * * @author pan_junbiao * */public class EnumOrdinalTest{public enum ColorEnum{RED, BLUE, GREEN}public static void main(String[] args){for (int i = 0; i <ColorEnum.values().length; i++){// 在循环中获取枚举类型成员的索引位置System.out.println(ColorEnum.values()[i] + "在枚举类型... 阅68 转0 评0 公众公开 20-03-15 17:50 |