`
hpgary
  • 浏览: 78571 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论
文章列表
一、简介         LevelDB是Google开源的持久化KV单机数据库,具有很高的随机写,顺序读/写性能,但是随机读的性能很一般,也就是说,LevelDB很适合应用在查询较少,而写很多的场景。LevelDB应用了LSM (Log Structured Merge) 策略,lsm_tree对索引变更进行延迟及批量处理,并通过一种类似于归并排序的方式高效地将更新迁移到磁盘,降低索引插入开销,本文只介绍Java的使用方式。 优点: 1、key和value都是任意长度的字节数组;2、entry(即一条K-V记录)默认是按照key的字典顺序存储的,当然开发者也可以重载这个排序函数;3、 ...

spring boot 枚举转换

    博客分类:
  • Java
1、所有枚举使用实现一个通用接口 例如: public interface BaseEnum { Integer getCode() ; String getMessage() ; } 枚举定义: public enum SexType implements BaseEnum{ MEN(1, "男"), WOMAN(2, "女"), NONE(0, "未知"); private int code; private String text; SexType(int code, ...
一、Innodb 配置优化 线程参数配置: sort_buffer_size (排序缓冲区), join_buffer_size(join缓冲大小),read_buffer_size(读取缓冲区大小),read_rnd_buffer_size(索引缓冲区大小)   mysql innodb系统参数配置: innodb_buffer_pool_size=1024M #innodb 缓存池大小,设置innodb使用缓存的大小  设置内存的80%左右 一般设置和数据量大小一直  (总内存-每个线程所需要的内存*连接数-系统保留的内存)    innodb_log_file_size  ...

Mysql存储引擎

一、Mysiam a、存储 Mysiam由FRM、MYI和MYD文件组成 b、锁 共享锁,只能锁表不支持锁行 c、损坏修复 CHECK TABLE myisam_table; //检查表是否损坏 REPAIR TABLE myisam_table; //修复表 d、索引类型 全文索引 e、压缩 对于数据大量插入后不 ...

Java XA 分布式事务

    博客分类:
  • Java
XA分布式事务,很显然是发生在多台db上的,   Java XA分布式事务实现如下: 依赖jar包: <dependency> <groupId>com.atomikos</groupId> <artifactId>transactions-jdbc</artifactId> <version>3.9.3</version> </dependency> <dependency> <groupId>javax.transac ...
     默认情况下Linux最大文件句柄数为1024个,当你的服务器在大并发达到极限时,就会报出“too many open files”        那么如何查看文件句柄数据呢?      使用命令就可以查看: root@hks03test:~# ulimit -a core file size          (blocks, -c) 0 data seg size           (kbytes, -d) unlimited scheduling priority             (-e) 0 file size               (bloc ...
一、简介 guava和ehcache一样也是本地缓存,虽然都是本地缓存,但是有着不同的使用场景。guava是谷歌提供的一个Java工具包,而Guava的Cache部分提供了一套分词完善的本地存储缓存机制,在Guave之前ConcurrentMap,因为能友好的支持 ...
一、Java内存模型简介 Java内存模型是Java里面高级技术也是很难理解的部分,希望能通过这篇文章让大家对JMM不在那么陌生,当很了解Java内存模型后Java多线程也就就会变得容易许多。   二、堆、栈和方法区存储了些什么 堆区: 1、存储的全部都是对象,每个对象包含一个与之对应的class的信息。 2、jvm只有一个堆区被所有的线程共享,堆中不存放基本类型和对象的引用 栈区: 1、每个线程包括一个栈区,栈中只保存基本数据类型的对象和自定义对象的引用(不是对象) 2、每个栈中的数据(基本数据类型和对象引用)都是私有的,其他栈没有权限访问 3、栈分为三个区:基本数据类 ...
 何为统一配置多个应用在一个地方配置,优点,更改数据库地址需要修改多个配置文件,到处重启,相当麻烦,用此方法可以让多个spring boot 通用配置在一个yaml文件里面,废话不多说了,下面开始动手实验吧。   1、实现EnvironmentPostProcessor接口和Ordered,Ordered接口是指定启动级别,EnvironmentPostProcessor接口是指定启动时候做一些事情,该类如下: package com.hks.config; import java.io.IOException; import org.slf4j.Logger; impo ...
一、简介 Kubernetes是用于自动化部署,扩容和管理集装箱化应用程序的开源系统。 学习kubernetes技术基础: 必会Docker,会写Dockerfile和Linux日常使用,如果这两个技能不熟,可以先学习这两个技能。 二、安装 a、配置kubernetes yum源: vim /etc/yum.repos.d/kubernetes.repo  [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 enable ...
 1、数据库为什么要水平拆分        由于业务发展数据量越来越大,例如淘宝、京东、58等等大型网站单表是绝对无法存储那么大的数据量的,因此出现了数据水平拆分,以某个字段取模、hash等方式将数据水平分割存到不同 ...
 1、MQ          MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。 2、安装 http://www.rabbitmq.com/download.html 选择通用二进制办解压安装 4、启动 sbin/rabbitmq-server -detached  5、启用web管理界面 sbin/rabbitmq-plugi ...
一、jsonp跨域 jsonp介绍        JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com的服务器沟通,而 HTML 的<script> 元素是一个例外。利用 <script> 元素的这个开放策略,网页可以得到从其他来源动态产生的 JSON 资料,而这种使用模式就是所谓的 JSONP。用 JSONP 抓到的资料并不是 JSON,而是任意的JavaScript,用 ...
jersey 简介        JAX-RS是JAVA EE6 引入的一个新技术。 JAX-RS即Java API for RESTful Web Services,是一个Java 编程语言的应用程序接口,支持按照表述性状态转移(REST)架构风格创建Web服务。JAX-RS使用了Java SE5引入的Java注解来简化Web服务的客户端和服务端的开发和部署。    RESTful Web 服务简介     REST 在 2000 年由 Roy Fielding 在博士论文中提出,他是 HTTP 规范 1.0 和 1.1 版的首席作者之一。     REST 中最重要的概念是资源 ...
1、开源地址: https://github.com/google/protobuf/ 2、发布版本下载: https://github.com/google/protobuf/releases   3、什么是Protobuf 官方文档给出的是:   a language-neutral, platform-neutral, extensible way of serializing structured data for use in communications protocols, data storage, and more.   3、数据类型   . ...
Global site tag (gtag.js) - Google Analytics