综合
zhengholien
静如止水,厚积薄发...
展开
-
关于二进制补码
最近把大学期间没弄清楚的二进制补码理清了,谢谢网络,谢谢阮大牛...以下内容复制于阮一峰的博客,源地址链接问一个基本的问题。负数在计算机中如何表示?举例来说,+8在计算机中表示为二进制的1000,那么-8怎么表示呢?很容易想到,可以将一个二进制位(bit)专门规定为符号位,它等于0时就表示正数,等于1时就表示负数。比如,在8位机中,规定每个字节的最高位为符号位。那么转载 2017-07-12 22:25:18 · 909 阅读 · 0 评论 -
java简单实现一致性哈希算法
什么是一致性哈希算法一种特殊的哈希算法,这种算法使得哈希表、集群的规模在伸缩时尽可能减少重映射(remap)。为什么需要它一致性哈希基本解决了在P2P环境中最为关键的问题——如何在动态的网络拓扑(集群)中分布存储和路由。每个节点仅需维护少量相邻节点的信息,并且在节点加入/退出系统时,仅有相关的少量节点参与到拓扑的维护中。两种常见的一致性哈希算法余数hashhash_原创 2017-10-20 23:42:34 · 1295 阅读 · 0 评论 -
初识JWT(java web token)
JWT(Json Web Token)是JSON风格轻量级的授权和身份认证规范,可实现无状态、分布式的Web应用授权。个人理解我认为它是分布式session的替代物,在没有jwt之前,我们可以用redis等缓存服务器来充当session存储服务器,用户根据cookic中的token到redis服务器取用户信息,这也是单点登录的一种设计方案。而JWT的出现,使成本更低,我们可以单独部署一原创 2017-09-01 21:08:51 · 7784 阅读 · 2 评论 -
ActiveMQ、RabbitMQ和Kafka的简单对比
ActiveMQRabbitMQKafka跨语言支持(java优先)语言无关支持(java优先)支持协议OpenWire、Stomp、XMPP、AMQPAMQP 优点遵循JMS规范安装部署方便继承Erlang天生的并原创 2017-09-09 11:35:48 · 3311 阅读 · 0 评论 -
awk查看与统计nginx访问日志
切割日志查找7月16日访问log导出到17.log文件中:cat web_access.log | egrep "17/Jul/2017" | sed -n '/00:00:00/,/23:59:59/p' > /tmp/16.log查看访问量前10的IPawk '{print $1}' web_access.log | sort | uniq -c | sort -nr | head -n原创 2017-09-16 21:51:27 · 4981 阅读 · 0 评论 -
nginx限制连接数和下载速度
有时候为了限流,我们可以在nginx的server中使用limit_zone设置一个限制域,比如 limit_zone zone1 $binary_remote_addr 10mzone1为限制域的名称,$binary_remote_addr为客户端ip的二进制形式,这种方式比较节约空间,10m是此限制域的总大小。接着在location中配置limit_conn,限制单个用户最多连接数原创 2017-09-16 14:18:12 · 11242 阅读 · 2 评论 -
idea2017.2普通web工程将lib包导入到artifact中
在网上找了一些文章,都是比较旧的版本,我运行项目是配置一个tomcat,然后将项目以artifact的形式发布运行的。问题是,如何把我们自己创建的lib目录下的jar导入到artifact中,eclipse比较简单,直接把jar放进去就行了,而idea用以下方式。方法:将jar包复制进lib——选中jar,右键,点add as library...,把该jar设置成project jar——点原创 2017-08-29 23:40:17 · 3324 阅读 · 0 评论 -
JMS与activeMQ,消息中间件入门
什么是中间件中间件是介于操作系统和应用程序之间的技术类组件中间件的作用提取通用的部分,屏蔽了底层的通讯,交互,连接等复杂又通用化的功能,以产品的形式提供出来,系统在交互时,直接采用中间件进行连接和交互即可,避免了大量的代码开发和人工成本。什么是消息中间件关注于数据的发送和接收,可以利用高效可靠的异步消息传递机制集成分布式系统的组件为什么使用消息中间件解耦、削峰、异步、顺序保原创 2017-09-13 22:31:29 · 375 阅读 · 0 评论 -
shiro快速入门
前2天写了web权限管理,那么实际开发中是如何实现权利管理的呢?下面一起来学习一下。传统方案:通过设置拦截器,基于url的方式进行管理,创建一个user类,用于存储menus,把user存储到session中到前端进行菜单动态显示,而user类的permissions集合用于url拦截,有对应权限才放行。这种方式实现简单,但是不易于维护。新方案:使用shiro权限管理框架原创 2017-08-23 16:00:31 · 805 阅读 · 0 评论 -
web权限管理
什么是权限管理:对用户访问系统进行控制,按照安全规则、安全策略控制用户只能访问被授权的资源,一般包含认证和授权两部分。权限管理基本流程图用户认证:验证用户身份的合法性,即用户登录,常用的身份认证方法:1.帐号密码 2.指纹 3.证书用户认证的相关概念subject:主体,可以是用户,也可以是程序来访问我们的系统资源principal:身份信息(帐号),通常是原创 2017-08-22 15:44:16 · 2980 阅读 · 0 评论 -
websocket实现多房间聊天室
众所周知,Web 应用的交互过程通常是客户端通过浏览器发出一个请求,服务器端接收请求后进行处理并返回结果给客户端,客户端浏览器将信息呈现。但是对于实时性要求较高、海量并发的应用,比如金融证券的实时信息,web导航应用中地理位置获取,社交网络的实时消息推送等。方案一:轮询,客户端用js代码每隔一定时间向服务器发送请求,这样会造成资源浪费(浪费带宽),在高并发的情况下还可能原创 2017-08-05 00:23:11 · 15198 阅读 · 13 评论 -
看着文档学ehcache
简介:纯java实现的缓存组件(jar包),最主要的作用还是做应用内缓存(进程内),比如hibernate就默认使用ehcache做缓存。我们可以创建多个缓存(cache),缓存中以key-value的形式存储数据,数据结构较为单一。存储位置:heap:由GC管理的JVM堆offheap:堆外内存(非JVM的堆)disk:持久化到硬盘,cache.destroy()方法可以原创 2017-08-13 23:59:30 · 10010 阅读 · 3 评论 -
CSS3自定义滚动条样式 -webkit-scrollbar
有没有觉得浏览器自带的原始滚动条很不美观,同时也有看到很多网站的自定义滚动条显得高端,就连chrome32.0开发板都抛弃了原始的滚动条,美观多了。那webkit浏览器是如何自定义滚动条的呢?前言webkit支持拥有overflow属性的区域,列表框,下拉菜单,textarea的滚动条自定义样式,所以用处还是挺大的。当然,兼容所有浏览器的滚动条样式目前是不存在的。演示转载 2017-08-03 09:34:03 · 270 阅读 · 0 评论 -
spring整合ehcahce2实现方法返回值缓存
spring没有直接支持ehcache3,非常无奈,前2天学了ehcache3,现在整合不了,只好与net.sf.ehcache中的2.10.x版本整合,这两个版本的ehcache.xml文件语法格式差别挺大的,但是功能差不多。等过阵子再学习一下spring-Jcache-ehcache3的整合。整合用到的类位于spring-context-support包下sprin原创 2017-08-16 23:53:13 · 1095 阅读 · 2 评论 -
quartz基本使用
quartz的任务调度功能比JDK自带的Timer强大得多,有必要学习并致用,在此记录一下...quartz的jar包在官网可以下载到,百度/谷歌:quartzmaven依赖(可以在maven repository找到绝大多数jar的maven依赖): org.quartz-scheduler quartz 2.2.2Job接口:只有一原创 2017-07-30 13:49:15 · 461 阅读 · 0 评论 -
spring整合quartz
其实quartz在真正项目中使用有两种方式,1种是使用servlet,一种是整合到spring中,今天记录一下后者,毕竟绝大多数项目都使用了spring。pom.xml如下,只有quartz和spring的jar依赖和一些编译版本和编码设置<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="原创 2017-07-30 14:26:44 · 267 阅读 · 0 评论 -
idea上把maven项目打包成war包直接部署在tomcat上
idea刚上手不久,捣腾了几个小项目练手,发现idea非常人性化,它可以直接把按键设置成eclipse一样的,这个IDE确实比eclipse更顺手点,比如响应比较快。下面我直接把war包云新在tomcat上,不使用mvn命令运行tomcat插件。1.idea可以很方便地把maven项目打成war包2.创建tomcat server3.部署war包到tomcat上注意:在打包war包原创 2017-08-15 10:55:45 · 21712 阅读 · 0 评论