Java 中的 单例

单例的好处 单例的实现方式 方式一: 缺点: 方式二: 优点 缺点 方法三: 参考 单例的好处 对于频繁使用的对象,节省 new 操作花费的时间,这对于那些重量级对象而言,是非常可观的一笔系统开销。 由于 new 操作的次数减少,因而对系统内存的使用频率降低,这将减轻 GC 压力,缩短 GC 停顿时间。 单例的实现方式 方式一: public class Elvis { private static final Elvis ...
点我阅读更多...

centos7 安装和配置 rabbitmq

安装 erlang 安装 rabbitmq server 启动 安装 web 管理页面 用户管理 用户角色 在 **centos 7 上安装和配置 rabbitmq。官方文档有更加详细的配置 安装 erlang rabbitmq 需要有 erlang 的环境,如果使用 yum 安装,执行下面的命令 su -c 'rpm -Uvh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm' su -c 'yum install foo’ yum install erlang 执行完成后可以使用 erlang 进行检查是否安装成功。 安装 ...
点我阅读更多...

GeoHash实现周边推荐

GeoHash基础 GeoHash转换过程 转换 合并 误差 Java实现代码 参考内容 旅游,外卖等需要定位的项目中一般会有周边推荐的需求,如推荐出周边五公里的景点。目前实现的算法也有很多,这里简单的说下GeoHash的实现原理以及Java的实现代码。 GeoHash基础 GeoHash使用一个字符串来表示经度和纬度。这样在做周边搜索的时候可以在一列上加索引。 GeoHash表示的不是一个点,而是一个矩形区域。 精度范围为(-180,180),纬度范围为(-90,90) GeoHash转换过程 转换 GeoHash就是将经纬度信息,转换为可以排序、比较的字符串编码。 首先将纬度范围(-...
点我阅读更多...

springboot redis实现session共享

工具 模拟分布式 创建一个springboot项目 配置redis和访问的端口 配置redis缓存session 编写一个测试的控制类 测试 目前缺点 参考资料 当创建分布式服务时会出现session共享的问题,即第一次访问的时候负载均衡会将请求分配到server1上,但是当第二次访问的时候,如果请求没有分配到server1上,那么用户的会话状态将丢失。下面给出了一种使用springboot整合redis的共享session的例子。 工具 nginx-1.7.10 redis-2.8 模拟分布式 使用nginx模拟一个简单的分布式的环境,在nginx.conf中添加 upstream tomcat { ...
点我阅读更多...

小觑Chrome Extension

为何不看看官方文档? 我要做什么? 文件组成 基本文件组成 manifest.json popup.html popup.js icon.png 如何查看效果? 问题总结 最近一朋友问了一个关于Chrome Extension的问题,因为之前从来没有接触过,然后就自己看着文档动手写了一个简单的示例。Chrome Extension除了官方的一个API接口外,其他的就是一些html,css,js的知识了,如果很熟悉这些,写一个简单的自己的插件还是可以的。这里只是做了一个最简单的功能,毕竟我的前端功底不是太好,如果想有更加深入的了解,强烈建议读下Chrome的官方文档。 为何不看...
点我阅读更多...

Java Tips

tips 纸上得来终觉浅,绝知此事要躬行。 tips 面向对象的精髓是模拟现实,需要多从现实中考虑面向对象的东西。 抽象类和接口的区别在于使用动机,使用抽象类是为了复用,使用接口是为了实现多态。接口和他的子类应该是一般和特殊的关系,而接口仅仅是它的之类应该实现的一组规则。
点我阅读更多...

final关键字

final变量 final方法 final类 final关键字的好处? 关键点 根据上下文,final的含义有细微的差别,但通常它指的是“这是无法改变的”。不想做出改变可能出于两种理由:设计和效率。 final一般用于三种情况:变量、方法和类。 final变量 凡是对成员变量和本地变量(在方法中和代码块中的变量)声明为final的都称为final变量,final变量经常和static关键字一块使用,作为常量。 public static final String DEL_FLAG_NORMAL = "0"; public static final String DEL_FLAG_DELETE = "1"; public static final S...
点我阅读更多...