摘要: Dubbox 是继 Dubbo 停止维护后,当当网基于 Dubbo 做的一个扩展项目,如 加了服务可 Restful 调用,更新了开源组件等。 阅读全文
posted @ 2020-05-07 20:02 咔啡 阅读(226) 评论(0) 推荐(0)
摘要: Dubbo 必须依赖 JDK,其他为可选。 阅读全文
posted @ 2020-05-07 20:00 咔啡 阅读(621) 评论(0) 推荐(0)
摘要: 目前暂时不支持,可与通过 tcc-transaction 框架实现 介绍:tcc-transaction 是开源的 TCC 补偿性分布式事务框架 Git 地址:https://github.com/changmingxie/tcc-transaction TCC-Transaction 通过 Dub 阅读全文
posted @ 2020-05-07 19:59 咔啡 阅读(1322) 评论(0) 推荐(0)
摘要: Dubbo 框架在初始化和通信过程中使用了多种设计模式,可灵活控制类加载、权 限控制等功能。 工厂模式 Provider 在 export 服务时,会调用 ServiceConfig 的 export 方法。ServiceConfig 中有个字段: private static final Prot 阅读全文
posted @ 2020-05-07 19:58 咔啡 阅读(896) 评论(0) 推荐(0)
摘要: 可以通过 dubbo:reference 中设置 mock="return null"。mock 的值也可以修 改为 true,然后再跟接口同一个路径下实现一个 Mock 类,命名规则是 “接口 名称+Mock” 后缀。然后在 Mock 类里实现自己的降级逻辑 阅读全文
posted @ 2020-05-07 19:57 咔啡 阅读(531) 评论(0) 推荐(0)
摘要: 可以结合 zipkin 实现分布式服务追踪。 阅读全文
posted @ 2020-05-07 19:56 咔啡 阅读(1115) 评论(0) 推荐(0)
摘要: 推荐使用 Zookeeper 作为注册中心,还有 Redis、Multicast、Simple 注册中 心,但不推荐。 阅读全文
posted @ 2020-05-07 19:55 咔啡 阅读(759) 评论(0) 推荐(0)
摘要: Zookeeper 是一个典型的发布/订阅模式的分布式数据管理与协调框架,开发人员 可以使用它来进行分布式数据的发布和订阅。 通过对 Zookeeper 中丰富的数据节点进行交叉使用,配合 Watcher 事件通知机 制,可以非常方便的构建一系列分布式应用中年都会涉及的核心功能,如: 1、数据发布/ 阅读全文
posted @ 2020-05-07 19:54 咔啡 阅读(217) 评论(0) 推荐(0)
摘要: 不是。官方声明:一个 Watch 事件是一个一次性的触发器,当被设置了 Watch 的数据发生了改变的时候,则服务器将这个改变发送给设置了 Watch 的客户端, 以便通知它们。 为什么不是永久的,举个例子,如果服务端变动频繁,而监听的客户端很多情况 下,每次变动都要通知到所有的客户端,给网络和服务 阅读全文
posted @ 2020-05-07 19:53 咔啡 阅读(1462) 评论(0) 推荐(0)
摘要: 部署模式:单机模式、伪集群模式、集群模式。 阅读全文
posted @ 2020-05-07 19:52 咔啡 阅读(1450) 评论(0) 推荐(0)
摘要: zookeeper 采用了全局递增的事务 Id 来标识,所有的 proposal(提议)都在被 提出的时候加上了 zxid,zxid 实际上是一个 64 位的数字,高 32 位是 epoch(时 期; 纪元; 世; 新时代)用来标识 leader 周期,如果有新的 leader 产生出来,epoch 阅读全文
posted @ 2020-05-07 19:51 咔啡 阅读(1761) 评论(0) 推荐(2)
摘要: 第一级缓存由Session实例维护,它是必选的,其中保持了Session当前所有关联实体的数据,也称为内部缓存。而第二级缓存则存在于SessionFactory层次,它是可选的。一级缓存只能为当前线程的会话缓存,无法给整个应用共享;二级缓存可为整个应用提供缓存支持。二级缓存可以开启查询缓存,而一级缓 阅读全文
posted @ 2020-05-07 19:48 咔啡 阅读(209) 评论(0) 推荐(0)
摘要: Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和 Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面对这五的核心接口分别加以介绍。 Se 阅读全文
posted @ 2020-05-07 19:47 咔啡 阅读(289) 评论(0) 推荐(0)
摘要: Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的,拦截器是AOP的一种实现. 拦截器栈(Interceptor Stack)类似于过滤器链。拦截器栈就是将拦截器按一定的顺序联结成一条链。在访问被拦截的方法或字段时,拦截器 阅读全文
posted @ 2020-05-07 19:46 咔啡 阅读(156) 评论(0) 推荐(0)
摘要: MVC (Model View Controller) 是一个设计模式,使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。M是指数据模型,V是指用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以应用于不同的表现形式。 MODEL: 阅读全文
posted @ 2020-05-07 19:45 咔啡 阅读(4869) 评论(0) 推荐(1)
摘要: PreparedStatement是预编译的SQL语句,效率高于Statement。 PreparedStatement支持操作符,相对于Statement更加灵活。 PreparedStatement可以防止SQL注入,安全性高于Statement。 阅读全文
posted @ 2020-05-07 19:44 咔啡 阅读(238) 评论(0) 推荐(0)
摘要: 工作原理:JAVA EE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空 阅读全文
posted @ 2020-05-07 19:43 咔啡 阅读(380) 评论(0) 推荐(0)
摘要: 1.通过创建临时表 creat table tbl_tmp as select distinct * from tbl; truncate table tbl;//清空表记录 insert into tbl select * from tbl_tmp;//将临时表中的数据插回来。 2.利用rowid 阅读全文
posted @ 2020-05-07 19:42 咔啡 阅读(835) 评论(0) 推荐(0)
摘要: WHERE是在数据分组前进行条件过滤, HAVING子句是在数据分组后进行条件过滤,WHERE子句中不能使用聚合函数,HAVING子句可以使用聚合函数。 需要注意说明:当同时含有where子句、group by 子句 、having子句及聚集函数时,执行顺序如下: A、执行where子句查找符合条件 阅读全文
posted @ 2020-05-07 19:41 咔啡 阅读(1032) 评论(0) 推荐(0)
摘要: JSP是Servlet技术的扩展,本质上是Servlet的简易方式,更强调应用的外表表达。JSP编译后是"类servlet"。 Servlet和JSP最主要的不同点在于,Servlet的应用逻辑是在Java文件中,并且完全从表示层中的HTML里分离开来。 而JSP的情况是Java和HTML可以组合成 阅读全文
posted @ 2020-05-07 19:40 咔啡 阅读(362) 评论(0) 推荐(0)