redis集群环境搭建、扩容、缩容原理

一、背景 随着互联网的不断发展,用户体验要求越来越高,为了提高性能大家常常采用的方案是将我们的热点数据存储到缓存中,这样来减少服务与数据库的交互。怎样能搭建一个高可用的缓存集群也就成为了新的问题。 Redis3.0版本之前,可以通过Redis Sentinel(哨兵)来实现高可用 (...

2019-03-01 11:31:13

阅读数 101

评论数 0

一致性Hash原理与应用

一、背景 一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简 单哈希算法带来的问题,使得分布式哈希(DHT)可以在P2P环境中真正得到应用。 ...

2019-02-28 10:15:38

阅读数 34

评论数 0

从JVM原理到性能调优

一、Java加载过程 类从被加载到JVM中开始,到卸载为止,整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载七个阶段。 其中类加载过程包括加载、验证、准备、解析和初始化五个阶段。   类加载器的任务就是根据一个类的全限定名来读取此类的二进制字节流到JVM...

2019-02-22 09:03:22

阅读数 31

评论数 0

解密MYSQL索引机制

一、什么是非聚蔟索引和聚蔟索引   非聚蔟索引        数据库索引相当于书本的目录,目录里面的是对应的页码,索引也是,当查询走索引时,找到索引,索引里面也有找到对应数据的路径,就是数据在磁盘上的物理地址,主索引,次索引都是这么存的,索引与数据分开了。这类索引就是非聚簇索引,myisam索...

2019-02-21 20:49:18

阅读数 41

评论数 0

分布式事务、跨库事务的实现原理与JDBC实现XA分布式事务

一、背景      随着,互联网的不断发展,传统的单库已经无法满足我们业务上的需求。作为行业内的解决方案就是将数据库进行分区、分库、分表、分片。但是其中涉及分库的时候,事务的提交又变成了行业中难题。为了解决这个问题Mysql5.0后,开始支持分布式事务XA。 二、XA原理        我们...

2019-02-19 10:09:27

阅读数 65

评论数 0

MySql分表、分库、分片和分区知识

一、前言     数据库的数据量达到一定程度之后,为避免带来系统性能上的瓶颈。需要进行数据的处理,采用的手段是分区、分片、分库、分表。 二、分片(类似分库)      分片是把数据库横向扩展(Scale Out)到多个物理节点上的一种有效的方式,其主要目的是为突破单节点数据库服务器的 I/O...

2019-02-18 20:52:29

阅读数 242

评论数 0

mysql数据库安装环境部署

1、安装环境 系统:linux 工具:mysql-8.0.15-1.el7.x86_64.rpm-bundle.tar,下载地址:官网,https://dev.mysql.com/downloads/mysql/ 2、安装步骤 1)上传本地mysql-8.0.15-1.el7.x86_64...

2019-02-13 15:22:59

阅读数 142

评论数 0

mac的liunx虚拟机安装solr7.6服务器以及解决安装过程中的问题

      solr5以前solr的启动都有tomcat作为容器,但是从solr5以后solr内部集成jetty服务器,可以通过bin目录中脚本直接启动。就是从solr5以后跟solr4最大的区别是被发布成一个独立的应用。 一、环境准备    Centos7,Jdk1.8.0.144,solr...

2019-01-30 21:25:35

阅读数 103

评论数 0

mac的linux安装tomcat全过程并解决宿主机mac不能访问虚拟机tomcat服务器

一、Linux下Tomcat8的安装配置 安装tomcat前首先要安装对应的jdk并配置Java环境。 1、环境准备 jdk版本:1.8 工具:mac自带终端 2、安装步骤 2.1 安装jdk 2.1.1、下载安装包 官网下载地址:http://www.oracle.com/tec...

2019-01-30 19:38:18

阅读数 150

评论数 0

程序员,如何打破职业瓶颈期?

程序员经过知识的积累过程大致分为困惑期、发展期、瓶颈期和自由期四个阶段,困惑期、发展期和自由期这三个阶段随着工作经验的逐步丰富,过渡都是非常容易。与其相反,瓶颈期是很难渡过并且这个阶段是对事业和人生的非常关键的阶段。在这里学到的、掌握到的都是行走江湖的真功夫。经历了这个过程后,就基本能把程序员分出...

2018-12-28 10:22:00

阅读数 79

评论数 2

订单状态机设计

状态机整体设计:   说明: 基本要素:状态(state)、事件(event)、流转(transition)、虚拟状态(virtual state)、条件(guard)、条件分支、默认分支; 基本流程:图中"开始"状态接收到事件"E...

2018-12-28 10:13:48

阅读数 816

评论数 0

Java利用Redis实现分布式锁的代码封装

       当今互联网时代,单机服务器已经无法满足系统性能要求,各个公司都采用分布式部署,此时就涉及到分布式锁。常用处理分布式锁的方式是采用redis的setnx命令来实现,接下来我们看一下怎样来封装一个比较好的分布式锁结构。 CacheService.java 缓存处理接口 packa...

2018-12-23 22:39:41

阅读数 83

评论数 0

手写Netty实现RPC接口远程调用客户端与服务器

Java的IO分为BIO、NIO、AIO(NIO.2), 其中它们分别含义是: Java BIO : 同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。 Java N...

2018-12-21 19:40:50

阅读数 570

评论数 4

数据字典模版

        一个好的团队,工作之中应该有各种各样的模版,对应数据库设计也是一样,数据库字典是你对整个系统从各个环节的思考的细化。现在都实行敏捷开发,数据字典不于过重,所以最近工作之中自己设计了一个简易的数据字典模版。                                   ...

2018-11-21 22:46:25

阅读数 1272

评论数 0

怎样优化自己的统一处理异常类

     Java程序中,异常处理对于程序来说是非常基础。但是真正能很好理解并且很好的统一处理,这样会使得代码逻辑更清晰,更简单、更高效。下面就是程序中需要处理并且注意的异常统一处理案例: 1、自定义异常类 Controller异常类 package com.jd.wyjm.front.co...

2018-10-14 22:10:53

阅读数 157

评论数 0

JAVA高效实现列表上下移动、置顶的高效计算方法

       大家可能常常遇到像文章列表、商品列表,业务要求我们实现列表能自动上下移动和置顶。遇到这样我们大多数往往想的是很简单,给个排序字段sort类型为INT不就行了吗?       它的实现方法,每当新增一条记录的时候,sort都会在前一条记录上+1。例如:我们用这5条记录来进行排序。记录...

2018-07-18 10:31:46

阅读数 1543

评论数 1

Rest接口中,异常处理更通用。

       Java程序中,异常处理对于程序来说是非常基础。但是真正能很好理解并且很好的统一处理,这样会使得代码逻辑更清晰,更高效。下面就是程序中需要处理并且注意的异常统一处理案例:通用异常处理类:package com.jd.ccc.sys.biz.yb.mall.common.excepti...

2018-06-11 09:54:47

阅读数 513

评论数 0

HashMap的数据结构?HashMap怎样解决KEY中hash值冲突问题?HashMap是否是线程安全?HashMap为什么属于线程非安全?

Java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,HashMap也不例外。HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体。HashMap利用“单向链表”解决key的hash值相等的问题。HashM...

2018-06-06 21:45:28

阅读数 480

评论数 0

elasticsearch搜索中文分词理解、类似SQL语句中的"LIKE”条件的模糊搜索以及忽略大小写搜索

01》不进行分词的索引建立:URL:es_index_test{  "settings": {    "index": {      "number_of_shards": &quo...

2018-06-05 15:25:29

阅读数 5343

评论数 0

程序员应该怎样使用MYSQL索引

MySQL索引的概念         索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。更通俗的说,数据库索引好比是一本书前面的目录,能加快数据库的查询速度。它分为聚簇索引和非聚簇索引:聚簇索引能提高多行检索的速度、非聚簇索引对于单行...

2017-08-11 17:06:28

阅读数 132

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭