10 2020 档案

摘要:一、为什么会有分布式锁? 在多线程环境下,由于上下文的切换,数据可能出现不一致的情况或者数据被污染,我们需要保证数据安全,所以想到了加锁。 所谓的加锁机制呢,就是当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问,直到该线程读取完,其他线程才可使用。 我们为了减少DB的压力,把库存预热到 阅读全文
posted @ 2020-10-28 15:12 随心的风 阅读(82) 评论(0) 推荐(0) 编辑
摘要:Zookeeper是什么 ZooKeeper是一个开放源码的分布式协调服务,它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户。 分布式应用程序可以基于Zookeeper实现诸如数据发布/订阅、负载均衡、命名服 阅读全文
posted @ 2020-10-28 14:27 随心的风 阅读(149) 评论(0) 推荐(0) 编辑
摘要:为什么要引入线程池当我们需要的并发执行线程数量很多时,且每个线程执行很短的时间就结束了,这样,我们频繁的创建、销毁线程就大大降低了工作效率(创建和销毁线程需要时间、资源)。java中的线程池可以达到这样的效果:一个线程执行完任务之后,继续去执行下一个任务,不被销毁,这样线程利用率提高了。 java中 阅读全文
posted @ 2020-10-28 11:27 随心的风 阅读(1026) 评论(0) 推荐(0) 编辑
摘要:一、五中数据类型 String: 字符串 Hash: 散列 List: 列表 Set: 集合 Sorted Set: 有序集合 Redis 发布订阅 Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。 Redis 客户端可以订阅 阅读全文
posted @ 2020-10-28 11:02 随心的风 阅读(81) 评论(0) 推荐(0) 编辑
摘要:使用场景和优缺点: 2 Redis用来做什么? 通常局限点来说,Redis也以消息队列的形式存在,作为内嵌的List存在,满足实时的高并发需求。而通常在一个电商类型的数据处理过程之中,有关商品,热销,推荐排序的队列,通常存放在Redis之中,期间也包扩Storm对于Redis列表的读取和更新。 Re 阅读全文
posted @ 2020-10-28 10:47 随心的风 阅读(2608) 评论(0) 推荐(0) 编辑
摘要:一、事务定义 Transaction 事务:一个最小的不可再分的工作单元;通常一个事务对应一个完整的业务(例如银行账户转账业务,该业务就是一个最小的工作单元) 一个完整的业务需要批量的DML(insert、update、delete)语句共同联合完成 事务只和DML语句有关,或者说DML语句才有事务 阅读全文
posted @ 2020-10-28 09:42 随心的风 阅读(98) 评论(0) 推荐(0) 编辑
摘要:DockerFile体系结构(保留字指令) FROM:基础镜像,当前新镜像是基于哪个镜像的 MAINTAINER:镜像维护者的姓名和邮箱地址 RUN:容器构建时需要运行的命令 EXPOSE:当前容器对外暴露出的端口 WORKDIR:指定在创建容器后,终端默认登陆的进来工作目录,一个落脚点 ENV:用 阅读全文
posted @ 2020-10-22 23:56 随心的风 阅读(111) 评论(0) 推荐(0) 编辑
摘要:CentOS Docker 安装Docker支持以下的CentOS版本:CentOS 7 (64-bit)CentOS 6.5 (64-bit) 或更高的版本 前提条件目前,CentOS 仅发行版本中的内核支持 Docker。Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本 阅读全文
posted @ 2020-10-22 23:51 随心的风 阅读(920) 评论(0) 推荐(0) 编辑
摘要:主要有四个方面的区别: 1、sleep是线程中的方法,但是wait是Object中的方法 2、sleep方法不会释放lock,但是wait会释放,而且会加入等待队列中 3、sleep方法不依赖于同步器synchronized,但是wait需要依赖synchronized关键字 3、sleep不需要被 阅读全文
posted @ 2020-10-22 23:22 随心的风 阅读(2605) 评论(0) 推荐(0) 编辑
摘要:Nginx的rewrite规则 实现url重写一级重定向 使用场景: 1、URL访问跳转,支持开发设计 页面跳转、兼容性支持、展示效果 2、SEO优化 3、维护 后台维护、流量转发等 4、安全 配置语法: Syntax: rewrite regex replacement Default: - Co 阅读全文
posted @ 2020-10-22 23:08 随心的风 阅读(307) 评论(0) 推荐(0) 编辑
摘要:简单总结如何在 Nginx 配置 HTTPS 服务器,让自己站点上『绿锁』。 Nginx 配置 HTTPS 并不复杂,主要有两个步骤: 签署第三方可信任的 SSL 证书 和 配置 HTTPS 有一个免费申请证书的网站https://freessl.org/ 推荐一下。 https服务 对传输内容进行 阅读全文
posted @ 2020-10-22 22:37 随心的风 阅读(93) 评论(0) 推荐(0) 编辑
摘要:源码地址: https://www.cnblogs.com/haoworld/p/java-bing-fa-xian-cheng-an-quan-he-nei-cun-mo-xing.html#toc_35 阅读全文
posted @ 2020-10-22 22:29 随心的风 阅读(52) 评论(0) 推荐(0) 编辑
摘要:lua及基础语法 Nginx与lua环境 场景:用Nginx结合lua实现代码的灰度发布 一、lua lua是一个简洁、清凉、可扩展的脚本语言 1、nginx+lua的优势 充分的结合Nginx的并发处理epoll优势和Lua的轻量实现简单的功能切高并发的场景 2、Lua的基础语法 安装 yum i 阅读全文
posted @ 2020-10-22 22:07 随心的风 阅读(727) 评论(0) 推荐(0) 编辑
摘要:BIO,NIO,AIO 总结 一、同步阻塞 (BIO) 同步阻塞IO,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器就需要启动一个线程进行处理,如果这个连接不 做任何事情会造成不必要的线程开销,可以通过线程池机制来改善,BIO方式适用于连接数目比较小且固定的架构,这种方式对 服务端资源 阅读全文
posted @ 2020-10-22 18:48 随心的风 阅读(227) 评论(0) 推荐(0) 编辑
摘要:Java8 新增了非常多的特性,我们主要讨论以下几个: Lambda 表达式 − Lambda 允许把函数作为一个方法的参数(函数作为参数传递到方法中)。 方法引用 − 方法引用提供了非常有用的语法,可以直接引用已有Java类或对象(实例)的方法或构造器。与lambda联合使用,方法引用可以使语言的 阅读全文
posted @ 2020-10-22 17:27 随心的风 阅读(98) 评论(0) 推荐(0) 编辑
摘要:当然请记住,explain是一个好习惯! MySQL索引失效的常见场景 在验证下面的场景时,请准备足够多的数据量,因为数据量少时,MySQL的优化器有时会判定全表扫描无伤大雅,就不会命中索引了。 1. where语句中包含or时,可能会导致索引失效 使用or并不是一定会使索引失效,你需要看or左右两 阅读全文
posted @ 2020-10-22 17:09 随心的风 阅读(4192) 评论(1) 推荐(0) 编辑
摘要:Java中的集合包括三大类,它们是Set、List和Map, Set(集) List(列表) Map(映射) 它们都处于java.util包中,Set、List和Map都是接口,它们有各自的实现类。(1)List的实现类主要有ArrayList,LinkedList,Vector(2)Set的实现类 阅读全文
posted @ 2020-10-22 16:53 随心的风 阅读(634) 评论(0) 推荐(0) 编辑
摘要:一、反射 反射Reflection:把java类中的各种结构(方法、属性、构造器、类名)映射成一个个的java对象。利用反射技术可以对一个类进行解剖,反射是框架设计的灵魂 //在运行期间,一个类,只有一个Class对象产生 //1、源头。获取class对象 Class clz = Class.for 阅读全文
posted @ 2020-10-22 15:56 随心的风 阅读(114) 评论(0) 推荐(0) 编辑
摘要:1.nginx缓存原理及配置 nginx的http_proxy模块,可以 实现类似于 squid的 缓存功能。 代理缓存 配置语法 配置语法:proxy_cache语法 Syntax: proxy_cache zone |off Default: proxy_cache off Cotext: ht 阅读全文
posted @ 2020-10-21 23:42 随心的风 阅读(108) 评论(0) 推荐(0) 编辑
摘要:ngixn负载均衡 分为四层和七层负载均衡 nginx负载均衡 配置语法: Syntax: upstream name{...} Default:- Context: http 配置示例: upstream举例 upstream backend{ server backend1.example.co 阅读全文
posted @ 2020-10-21 22:39 随心的风 阅读(47) 评论(0) 推荐(0) 编辑
摘要:Nginx作为静态资源 CDN分发资源 配置语法: Syntax: sendfile on|off Default: sendfile off Context:http,server,location,if in location 配置语法:将多个资源一起发送 提高效率 Syntax: tcp_no 阅读全文
posted @ 2020-10-21 17:40 随心的风 阅读(162) 评论(0) 推荐(0) 编辑
摘要:在项目开发时有时我们需要引入一些在maven仓库中不存在的包 一、配置maven环境变量 在path环境变量中添加 %maven_home%\bin (window10环境下) cmd界面输入 mvn -version 显示maven版本即表示配置成功 二、cmd切换到jar包位置 执行命令编译ja 阅读全文
posted @ 2020-10-21 16:14 随心的风 阅读(492) 评论(0) 推荐(0) 编辑
摘要:Rest简介 一种软件架构风格,而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务端互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制 Rest的操作分为以下几种: 1、GET:获取对象的当前状态 2、PUT:改变对象的状态 3、POST:创建对象 4、D 阅读全文
posted @ 2020-10-13 17:13 随心的风 阅读(221) 评论(0) 推荐(0) 编辑
摘要:ES是在Lucene的基础上实现的 1、Lucene全文检索 lucene是一个全文搜索框架,而不是应用产品。因此它并不像http://www.baidu.com/或goolge Destop 那么拿来就用,它只是提供了一种工具让你能实现这些产品 1、lucene能做什么呢 要回答这个问题,先要了解 阅读全文
posted @ 2020-10-13 17:12 随心的风 阅读(372) 评论(0) 推荐(0) 编辑
摘要:1、for循环 。。。 2、使用guava Map<Long, User> maps = Maps.uniqueIndex(userList, new Function<User, Long>() { @Override public Long apply(User user) { return u 阅读全文
posted @ 2020-10-13 17:06 随心的风 阅读(1712) 评论(0) 推荐(0) 编辑
摘要:1、集合与数组之间的转换 集合中如List和Set,都和数组有着高度的相似性,既然如此,实际上集合转数组也是情理之中的事情。 1.1 集合转数组 toArray 看几个常用的集合类,如上图继承关系图,可以看到他们都集成了一个抽象类AbstractCollection,这个类中就实现了Collecti 阅读全文
posted @ 2020-10-13 17:03 随心的风 阅读(320) 评论(0) 推荐(0) 编辑
摘要:List、Set和Map: List是有序的集合,Set是无序的集合。Map是无序的键值对。 HashMap详解: HashMap有两个参数影响其性能:初始容量和加载因子。默认初始容量是16,加载因子是0.75。容量是哈希表中桶(Entry数组)的数量,初始容量只是哈希表在创建时的容量。加载因子是哈 阅读全文
posted @ 2020-10-13 16:58 随心的风 阅读(306) 评论(0) 推荐(0) 编辑
摘要:一、集合大纲 1.集合和数组的区别: 2.Collection集合的方法: 3.常用集合的分类: Collection 接口的接口 对象的集合(单列集合)├——-List 接口:元素按进入先后有序保存,可重复│—————-├ LinkedList 接口实现类, 链表, 插入删除, 没有同步, 线程不 阅读全文
posted @ 2020-10-13 16:56 随心的风 阅读(128) 评论(0) 推荐(0) 编辑
摘要:待完善。。。 阅读全文
posted @ 2020-10-13 16:46 随心的风 阅读(50) 评论(0) 推荐(0) 编辑
摘要:待完善 阅读全文
posted @ 2020-10-13 16:45 随心的风 阅读(67) 评论(0) 推荐(0) 编辑
摘要:待完善。。。 阅读全文
posted @ 2020-10-13 16:44 随心的风 阅读(71) 评论(0) 推荐(0) 编辑
摘要:1、待完善。。。 阅读全文
posted @ 2020-10-13 16:42 随心的风 阅读(54) 评论(0) 推荐(0) 编辑
摘要:1、MySQL中创建存储过程时通过DEFINER和SQL SECURITY设置访问权限 procedure与function、trigger等创建时紧接着CREATE都有个definer可选项,该definer规定了访问该procedure等的安全控制 CREATE DEFINER=`root`@` 阅读全文
posted @ 2020-10-13 16:41 随心的风 阅读(138) 评论(0) 推荐(0) 编辑
摘要:MySQL 5.0 版本开始支持存储过程。 存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。 存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可通过指定存储过程的名字并给定参数(需要时)来调用执行。 存储过程思想上 阅读全文
posted @ 2020-10-13 16:09 随心的风 阅读(136) 评论(0) 推荐(0) 编辑
摘要:一、前言 Spring Email 抽象的核心是 MailSender 接口,MailSender 的实现能够把 Email 发送给邮件服务器,由邮件服务器实现邮件发送的功能。 Spring 自带了一个 MailSender 的实现 JavaMailSenderImpl,它会使用 JavaMail 阅读全文
posted @ 2020-10-13 11:27 随心的风 阅读(627) 评论(0) 推荐(0) 编辑
摘要:1、导入项目 2、配置project 3、导入项目模块 配置Models 4、配置Libraries 5、 6、 7、配置tomcat 阅读全文
posted @ 2020-10-13 11:14 随心的风 阅读(1247) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示