自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 分布式缓存

分布式缓存memcacheMemcache 提供简单的 kv cache 存储,value 大小不超过1mb。我使用 Memcache 作为大文本或者简单的 kv结构使用。Memcache 使用了slab 方式做内存管理,存在一定的浪费,如果大量接近的 item,建议调整 Memcache 参数来优化每一个 slab 增长的 ratio、可以通过设置 slab_automove & slab_reassign 开启 Memcache 的动态/手动 move slab,防止某些 slab 热点

2022-01-21 19:57:41 634

原创 分布式事务

分布式事务分布式的事务是指事务的参与者、支持事务的服务器、资源服务器及事务管理器分别位于不同的分布式系统的不同节点之上;问题支付宝账户表:A (id, user_id, amount)余额宝账户表:B (id, user_id, amount)用户的 user_id = 1,从支付宝转帐1万快到余额宝分为两个步骤:支付宝表扣除1万:UPDATE A SET amount = amount - 10000 WHERE user_id = 1;余额宝表增加1万:UPDATE B SET a

2022-01-20 21:13:27 149

原创 分布式服务

分布式服务按照功能进行系统拆分,拆分成独立的功能工程,可单独部署到一个服务器。淘宝系统,由不同的子系统组成,交易系统,物流系统,购物车系统,订单系统,商品系统,搜索系统,客服系统,结算系统等等耦合节点:共享数据库,通过消息中间件来维持联系,通过 rpc 来耦合中间件系统来粘合两个系统分布式系统架构的第一原则是不要分布!目标:提升系统的整体性能和吞吐量;设计的思路:中心化和去中心化中心化设计:master、node问题:master宕机后,整体集群崩塌;master管理能力、

2022-01-12 19:55:19 1432

原创 ElasticSearch学习6

Master 选举节点发现选举发起选举谁 Bully算法选举成功避免脑裂错误检测图https://pic2.zhimg.com/v2-7c4b590346650f5e32088458da5df48d_r.jpgES自己实现的一套用于节点发现和选主等功能的模块:ZenDiscovery当一个节点发现包括自己在内的多数派的master-eligible节点认为集群没有master时,就可以发起master选举该master-eligible节点的当前状态不是master。该m

2022-01-10 19:49:26 621

原创 ElasticSearch学习5

删除删除操作,commit的时候会生成一个.del文件,里面将某个doc标识为deleted状态,在搜索的时候根据.del文件可判断该doc已被删除。merge的时候,会看一下如果某条数据被标识.del,则删除,新的segment file 就没有了。更新更新操作-doc全量替换,就是将原来的doc标识为deleted状态,然后新写入一条数据。查询搜索被执行成一个两阶段过程,我们称之为 Query Then Fetch;在初始查询阶段时,查询会广播到索引中每一个分片拷贝(主分片或者副本分

2022-01-07 19:00:00 555

原创 ElasticSearc 学习4

数据写入集群客户端选择了一个node发送数据过去,这个node就是coordinating node 协调节点;Coordinating node 对document进行路由,将请求发送给对应的node 有primary shard路由算法: shard_index=hash(id)%number_of_primary_shards实际的node上的primary shard处理请求,然后将数据同步到replica nodecoordinating node,如果发现primary no

2022-01-05 20:23:28 610

原创 ElasticSearc 学习3

ElasticSearch 集群Es支持集群,简单配置即可,隐藏了分布式的复杂性集群架构解决高可用,分担请求压力分布式架构分担存储和计算压力,提速,解耦集群分布式架构配置,是否是候选节点,是否仅是数据节点node.master: truenode.data: true集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的。es的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说的,因为从外部来看es集群,在逻辑上是个整

2022-01-04 22:04:51 606

原创 ElasticSearch 学习2

倒排索引(也叫反向索引)原理分析:https://zhuanlan.zhihu.com/p/33671444根据属性的值来查找记录倒排索引文件映射FST(Finite State Transducer)有穷状态转换器写入直接PUT一个JSON的对象,这个对象有多个字段,在插入这些数据到索引的同时,Elasticsearch还为这些字段建立索引全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。FST有两个优点:1)空间占用小。通过对词典中单词前缀和后缀的重复利用,压缩了存储空间

2021-12-31 15:56:06 506

原创 ElasticSearch 学习1

使用场景Github使用Elasticsearch检索1300亿行的代码(想不到吧 哈哈哈)使用模糊搜索功能场景的项目(这也是为什么用ElasticSearch做搜错存储的原因之一,关系数据对模糊搜索做的不够好)大部分数据库在提取可用知识方面显得异常无能。它们能够通过时间戳或者精确匹配做过滤,但是它们不能够进行全文搜索,处理同义词和根据相关性给文档打分,不能根据同一份数据生成分析和聚合的结果,最重要的 是,它们在没有大量工作进程(线程)的情况下不能做到对数据的实时处理。然后,Elasti

2021-12-28 19:43:00 1080

翻译 2021-09-09

@Java实现国密算法SM2,SM4,实现ECB和CBC模式Java实现国密算法SM2,SM4,实现ECB和CBC模式因为项目需求:图片采用SM4加密,再国密SM2对密文加密,网上找了一些代码,但是存在方法过期,自己解决,并使用参考:https://blog.csdn.net/Soul_Programmer_Swh/article/details/80375958packageCipherimport org.bouncycastle.crypto.AsymmetricCipherKeyPai

2021-09-09 10:34:20 350

转载 git配置教程

一.配置ssh1.检查本机是否有ssh key设置如果没有则提示: No such file or directory如果有则进入~/.ssh路径下(ls查看当前路径文件,rm删除所有文件)2.使用Git Bash生成新的ssh key$ cd ~ #保证当前路径在”~”下$ ssh-keygen -t rsa -C “[email protected]” #建议填写自己真实有效的邮箱地址...

2019-09-29 14:59:31 132

原创 oracle重复值排序问题

分析函数dense_rank()分析函数还支持分组排序 dense_rank() over(partition by xxx order by Score desc )select grade ,dense_rank() over( order by grade desc )rank from student_grade–结果grade rank100 1100 192289 ...

2019-09-26 11:00:44 2651

原创 Java Web注解

1. AOP 注解介绍@Aspect 把当前类标识一个切面,供容器读取1.@Before 前置增强(目标方法执行之前,执行注解标注的内容)2.@AfterReturning 后置增强(目标方法正常执行完毕后,执行)3.@Around 环绕增强(目标方法执行前后,分别执行一些代码)4.@AfterThrowing 抛出增强(目标方法发生异常,执行)5.@After Final增强(不...

2019-08-19 15:52:28 217

转载 fiddler解决跨域问题

fiddler解决跨域问题原文:https://blog.csdn.net/chniccs/article/details/79640498

2019-02-22 13:10:00 1566

原创 Maven下,ssm框架Mybatis-pagehelper的使用

Mybatis-pagehelper一个非常好用的分页组件在pom.xml文件下导入需要的包(在https://mvnrepository.com/ 搜索更多版本,个人使用4.2.0有报错,更改的4.1.6)<!-- https://mvnrepository.com/artifact/com.github.pagehelper/pagehelper --> <dep...

2019-01-10 16:48:43 157

原创 JFrame 解决一元二次函数

import javax.swing.JFrame 对输入的一元二次函数的系数,进行求解,并画图。1、计算界面package yan;import java.awt.BorderLayout;import java.awt.Button;import java.awt.Color;import java.awt.Dimension;import java.awt.Graphics...

2018-12-10 15:04:18 294

翻译 mybatis配置文件,xml文件引入.dtd约束提示

在.xml文件中进行编写代码,或者Alt+/ 不出现提示,引入.dtd文件在source folder文件下新建**.xml文件在下载的源码文件中,解压出相应的文件,此文章以mybatis为例3.复制连接4.eclipse >> window >> preferences >> xml >> xml Catalog5 ok ok...

2018-11-29 21:07:00 659

原创 ReentrantReadWriteLock简单理解和使用

ReentrantReadWriteLock此类不会将读取者优先或写入者优先强加给锁访问的排序。但是,它确实支持可选的公平 策略。非公平模式(默认)当非公平地(默认)构造时,未指定进入读写锁的顺序,受到 reentrancy 约束的限制。连续竞争的非公平锁可能无限期地推迟一个或多个 reader 或 writer 线程,但吞吐量通常要高于公平锁。公平模式当公平地构造线程时,线程利用一个近似...

2018-11-28 15:03:10 261

原创 Java简单读取.properties文件

1、eclipse修改properties编码修改后可支持中文显示编码eclipse >> Window >> Preferences >> General >> Content Types >>Text(点开) >> Java Propertiest File >> 下框选择*.propertiest(lo

2018-11-23 15:41:07 211

原创 Tomcat8.5配置JNDI数据源详细过程

Tomcat8.5配置JNDI数据源详细过程初次学习,发现了很多问题,参照了很多博友,最终解决问题,分享大家。第一步、下载数据库的JDBC驱动,解压后放到Tomcat文件的lib文件下。第二步、在eclipse中,创建web项目,新建项目选址Dynamic Web Project第三步、将数据库的JDBC驱动解压复制到项目的WebContent/WEB-INF/lib文件下,并...

2018-10-31 15:25:06 7518 1

原创 JavaScript实现简单购物车效果

CSS、JavaScript;本地存储(localstorage)实现简单购物车添加、删除、计算、本地存储等。文章最下方见效果图。Html代码<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title&a

2018-09-30 10:57:23 4950 4

原创 H5+JS制作钟表

源代码:<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>&amp

2018-09-30 10:31:21 1030 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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