- 博客(36)
- 资源 (11)
- 收藏
- 关注
原创 基于自编码技术的AI换脸项目ALAE成功登顶Github
基于自编码技术的AI换脸项目ALAE成功登顶了Github趋势榜https://github.com/podgorskiy/ALAE相比于之前的人脸图像处理的项目,ALAE可谓是大BOSS的级别了,随便贴几张效果图大家来感受一下。不但图像分辨甩之前几代的换脸模型几条街,学习过程的可视化也更强 ALAE有两个自编码器:一个是基于MLP编码器,另一个基于StyleGAN对抗神经网络的生成...
2020-04-29 19:57:38
1887
1
转载 深入分布式缓存(一)缓存为王
第一章 缓存为王1.概念缓存:存储在计算机上的一个原始数据复制集, 以便于访问。CPU的缓存: 指位于CPU与内存之间的临时存储器,容量比内存小得多但交换速度却比内存要快得多.影响用户体验的因素:使用者的状态、系统性能、环境系统性能的指标一般包括:响应时间、延迟时间、吞吐量、并发用户数和资源利用率等.1.1响应时间: 是指系统对用户请求做出响应的时间, 与人对软件性能的主观感受是非常...
2019-11-18 20:25:50
266
原创 mysql技术内幕(七)事务
事务事务会把数据库从一种一致状态转换为另一种一致状态。在数据库提交工作时,可以确保要么所有修改都已经保存了,要么所有修改都不保存。InnoDB 存储引擎中的事务完全符合ACID 的特性。ACID 是以下4 个词的缩写:原子性(atomicity)一致性(consistency)隔离性(isolation)持久性(durability )7.1 认识事务7.1.1 概述A (At...
2019-10-14 20:08:19
305
原创 mysql技术内幕(六)锁
#锁6.1 什么是锁 锁是数据库系统区别于文件系统的一个关键特性。锁机制用于管理对共享资源的并发访问飞InnoDB 存储引擎会在行级别上对表数据上锁,这固然不错。不过InnoDB 存储引擎也会在数据库内部其他多个地方使用锁,从而允许对多种不同资源提供并发访问。例如,操作缓冲池中的LRU 列表,删除、添加、移动LRU 列表中的元素,为了保证一致性,必须有锁的介入。数据库系统使用锁是为了支持对共...
2019-10-13 14:38:56
231
原创 mysql技术内幕(五)索引与算法
#索引与算法5.1 InnoDB 存储引擎索引概述InnoDB 存储引擎支持以下几种常见的索引B+ 树索引全文索引哈希索引 innodb 存储引擎支持的哈希索引是自适应的, innodb 存储引擎会根据表的使用情况自动为表生成哈希索引,不能人为干预是否在一张表中生成哈希索引。 B+ 树索引就是传统意义上的索引.这是目前关系型数据库系统中查找最为常用最为有效的索引。B+ 树索...
2019-10-10 19:50:51
205
原创 mysql技术内幕(四)表
表表就是关于特定实体的数据集合,这也是关系型数据库模型的核心。4.1 索引组织表 在InnoDB 存储引擎中,表都是根据主键顺序组织存放的,这种存储方式的表称为索引组织表(index organized table) 。在InnoDB 存储引擎表中,每张表都有个主键(Primary Key ) ,如果在创建表时没有显式地定义主键,则InnoDB 存储引擎会按如下方式选择或创建主键:首先...
2019-10-09 16:48:33
180
原创 mysql技术内幕(三)文件
文件 数据库和InnoDB 存储引擎表的各种类型文件。这些文件有以下这些。参数文件:告诉MySQL 实例启动时在哪里可以找到数据库文件,并且指定某些初始化参数,这些参数定义了某种内存结构的大小等设置,还会介绍各种参数的类型。日志文件:用来记录MySQL 实例对某种条件做出响应时写人的文件,如错误日志文件、二进制日志文件、慢查询日志文件、查询日志文件等。socket 文件: 当用UNIX...
2019-09-30 14:27:53
147
原创 mysql技术内幕(二)InnoDB存储引擎介绍
InnoDB存储引擎介绍InnoDB存储引擎介绍2.1 InnoDB 存储引擎概述2.2 lnnoDB 存储引擎的版本2.3 lnnoDB 体系架构2.3.1 后台线程2.3.2 内存2.4 Checkpoint 技术2.5 Master Thread 工作方式2.5.1 lnnoDB 1.0.x 版本之前的Master Thread2.6 lnnoDB 关键特性2.6.1 插入缓冲2.7 启动、...
2019-09-28 20:43:26
332
原创 后端idea插件开发
前言 入职3个月的时间,通过这3个月品管系统的开发,发现我50%的时间都浪费在复制粘贴代码上,以及在各个文件之间添接口和文件跳转上,我认为后端应该把主要的时间花在业务实现上,而且我认为公司应该在项目开发上结构保持统一。我对项目进行了简单总结,发现大部分的工作都是类似模板式的方法,这种代码不应该一行一行出来,所以我开发了一个针对公司项目的定制idea插件,通过插件生成项目的50%的代码,而且出...
2018-11-05 16:02:04
1444
2
转载 京东到家基于netty与websocket的实践
背景 在京东到家商家中心系统中,商家提出在 Web 端实现自动打印的需求,不需要人工盯守点击打印,直接打印小票,以节约人工成本。解决思路 关于问题的思考逻辑:第一种:想到的是可以用ajax来轮询服务端获取最新订单,也就是pull。第二种:我们是否可以用类似推送的设计来实现,也就是push。 两种思路我们评估其优缺点:ajax方式实现简单,只需要定时从服务端pu...
2018-08-16 16:27:09
949
原创 海量数据的解决方案
1 缓存和页面静态化 数据量大这个问题最直接的解决方案就是使用缓存,缓存就是将从数据库中获取的结果暂时保存起来,在下次使用的时候元需重新到数据库中获取,这样可以大大降低数据库的压力。 缓存的使用方式可以分为通过程序直接保存到内存中和使用缓存框架两种方式。程序直接操作主要是使用Map ,尤其是ConcurrentHashMap。 而常用的缓存框架有Ehcache 、Memcache 和R...
2018-03-11 19:22:04
555
原创 深入理解java虚拟机-总结
第一部分 略; 第二部分:自动内存管理机制1运行时数据区域jdk1.6版本JVM布局分为:heap(堆),method(方法区),stack(虚拟机栈),native stack(本地方法栈),程序计数器共五大区域。 其中方法区包含运行时常量池。堆和方法区是线程共享的,虚拟机栈和本地方法栈、程序计数器是随线程而建的。1.1 程序计数器1.2 方法区:存储已被jvm加...
2018-03-11 11:20:04
379
原创 详解Servlet
Servlet其实就是一套规范,我们按照这套规范写的代码就可以直接在java的服务器上运行。Servlet的结构如下: 1.1 Servlet接口Servlet接口如下:public interface Servlet{ public void init(ServletConfig config) throws ServletException; public...
2018-03-05 17:18:30
353
原创 Spring AOP的实现(2)---Spring AOP的设计与实现
2. Spring AOP的设计与实现2.1 JVM 的动态代理特性 在Spring AOP实现中,使用的核心技术是动态代理,而这种动态代理实际上是JDK的一个特性(在JDK 1.3以上的版本里,实现了动态代理模式).通过JDK的动态代理特性,可以为任意Java对象创建代理对象,对于具体使用来说,这个特性是通过Java Reflection API归来完成的。 java代理模式介绍
2018-02-01 10:54:33
285
原创 Spring AOP的实现(1)---Spring AOP概述
1. Spring AOP概述 AOP是Aspect-Oriented Programming (面向方面编程或面向切面)的简称。 Aspect是一种新的模块化机制,用来描述分散在对象、类或函数中的横切关注点。从关注点中分离出横切关注点是面向切面的程序设计的核心概念。分离关注点使解决特定领或问题的代码从业务逻辑中独立出来,业务逻辑的代码中不再含有针对特定领域问题代码的调用,业务逻辑同特
2018-01-31 15:11:51
257
原创 Spring IOC解析(3)---IoC容器的依赖注入
1.4 IoC容器的依赖注入 上面对IoC容器的初始化过程进行了详细的分析,这个初始化过程完成的主要工作是在IoC容器中建立BeanDefinition数据映射。在此过程中并没有看到IoC容器对Bean依赖关系进行注入,接下来分析一下IoC容器是怎样对Bean的依赖关系进行注入的。 假设当前IoC容器已经载入了用户定义的Bean信息,开始分析依赖注入的原理。首先, 注意到依赖注入的过程
2018-01-30 20:43:44
400
原创 Spring IOC解析(2)---loC容器的初始化过程
1.3 loC容器的初始化过程 简单来说, IoC容器的初始化是由前面介绍的refresh()方法来启动的,这个方法标志着IoC容器的正式启动。具体来说,这个启动包括BeanDefinition的Resouce定位、载入和注册三个基本过程。如果我们了解如何编程式地使用IoC容器,就可以清楚地看到l Resource定位和载入过程的接口调用。 在下面的内容里,我们将会详细分析这三个过程的
2018-01-30 19:47:02
1131
原创 JAVA实现的百万英雄,芝士超人等答题,自动搜索答案,答题辅助
声明:辅助仅供个人娱乐一. 准备阶段1.安装adb 安装请参考: https://jingyan.baidu.com/article/7f41ecec349c0f593d095c84.html 注意:配置环境变量 其中使用到的adb命令: 启动服务 adb start-server 找到设备驱动 adb devices 截屏保存到/sdcard/pic
2018-01-25 12:39:51
2369
原创 用JAVA实现的微信跳一跳辅助
声明:辅助仅供个人娱乐,开挂可耻(好心虚)一. 准备阶段1. 安装adb安装请参考: https://jingyan.baidu.com/article/7f41ecec349c0f593d095c84.html 注意:配置环境变量 其中使用到的adb命令: 启动服务 adb start-server 找到设备驱动 adb devices 截屏保存到/sdcar
2018-01-21 11:39:02
3236
原创 Spring IOC解析(1)---IOC容器介绍
1.1 IOC容器和依赖反转模式 如果合作对象的引用或依赖关系的管理由具体对象来完成,会导致代码的高度藕合和可测试性的降低,这对复杂的面向对象系统的设计是非常不利的。在面向对象系统中,对象封装了数据和对数据的处理,对象的依赖关系常常体现在对数据和方法的依赖上。这些依赖关系可以通过把对象的依赖注入交给框架或IoC容器来完成,这种从具体对象手中交出控制的做法是非常有价值的,它可以在解藕代码的同时
2018-01-18 16:09:37
359
原创 Tomcat详解(5)---Connector 分析
5 Connector 分析 Connector 用于接收请求并将请求封装成Request 和Response 来具体处理,最底层是使用Socket 来进行连接的, Request 和Response 是按照HTTP 协议来封装的,所以Connector 同时实现了TCP/IP 协议和HTTP 协议, Request 和Response 封装完之后交给Container 进行处理,Conta
2018-01-16 19:08:57
6539
原创 Tomcat详解(4)---Pipeline-Value 管道
4 Pipeline-Value 管道Container 处理请求是使用Pipeline-Value 管道来处理的4.1 Pipeline-Value 处理模式 Pipeline-Value 是责任链模式,责任链模式是指在一个请求处理的过程中有多个处理者依次对请求进行处理,每个处理者负责做自己相应的处理,处理完成后将处理后的请求返回,再让下一个处理者继续处理,就好像驾车的过程中可能会
2018-01-16 16:50:04
1652
1
原创 Tomcat详解(3)---Container 分析
3 ContainerBase 的结构3.1 ContainerBase 的结构 Container 是Tomcat 中容器的接口,通常使用的Serviet 就封装在其子接口Wrapper 中。Container 一共有4 个子接口Engine 、Host 、Context 、Wrapper 和一个默认实现类ContainerBase,每个子接口都是一个容器,这4 个子容器都有一个对应的
2018-01-16 16:11:12
4072
1
原创 Tomcat详解(2)---Tomcat 的生命周期管理
2 Tomcat 的生命周期管理2.1 Lifecycle 接口 Tomcat 通过org.apache.catalina.Lifecycle 接口统一管理生命周期,所有有生命周期的组件都要实现Lifecycle 接口。Lifecycle 接口一共做了4 件事:定义了13 个String 类型常量, 用于LifecycleEvent 事件的type属性中,作用是区分组件发出的Life
2018-01-15 17:19:43
582
原创 Tomcat详解(1)---Tomcat 的顶层结构及启动过程
1 Tomcat 的顶层结构及启动过程1.1 Tomcat 的顶层结构Tomcat 中最顶层的容器叫Server, 代表整个服务器 Server 中包含至少一个Service, 用于具体提供服务。 Service 包含两部分: Connector 和Container。Connector 处理连接相关的事情,并提供Socket 与request 、response 的转换C
2018-01-15 16:06:29
573
原创 推荐使用的两种单例模式
两种经典的线程安全的单例模式(均采用懒汉式),一种是同步加锁的模式;一种是采用私有静态类的方式。一、只有当instance为null时,需要获取同步锁,创建一次实例。当实例被创建,则无需试图加锁。public class Singleton { private static Singleton instance=null; private Singleton(){ }
2017-05-17 19:29:39
230
原创 多线程笔记(三)
7.1Executor框架为了更好的控制多线程,JDK提供了一台线程框架Execator,帮助开发人员有效的进行线程控制。是JDK并发包的核心。我们平时用的最多的便是Executors工厂类,这个工厂类提供了能产生多个不同功能线程池的方法。newFixedThreadPool()方法:具有固定数量的线程池,线程数量始终不变。当有一个新任务提交时,线程中若有空闲进程变会执行它。若没有,则新的任务会被暂
2017-05-11 15:54:54
222
原创 多线程笔记(二)
线程之间通信线程通信概念:线程是操作系统中独立的个体,但这些个体如果不经过特殊的处理就不能成为一个整体,线程间的通信就是成为整体的比用方式之一。当线程存在通信指挥,系统间的交互性会更强大,在提高CPU利用率的同时还会使开发人员对线程认为在处理的过程中进行有效的把控与监督。 使用wait、notify方法实现线程间的通信。这两个方法都是object的类方法,既所有对象都提供了这两个方法。 1.wa
2017-05-11 15:54:36
204
原创 多线程笔记(一)
1.1线程安全是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。 线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据。public class MyThread extends Thread{ private int count = 5 ;
2017-05-11 15:54:11
267
转载 MySQL 性能优化
一:查询缓存优化你的查询大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了。 这里最主要的问题是,对于程序员来说,这个事情是很容易被忽略的。因为,我们某些查询语句会让MySQL不使用缓存。二:EXPLAIN 你的
2015-10-08 20:52:08
361
转载 高并发网站架构设计方案
一、网页HTML 静态化:其实大家都知道网页静态化,效率最高,消耗最小的就是纯静态化的 html 页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法,但是对于大量内容并且频繁更新的网站,我们无法全部手动去挨个实现,于是出现了我们常见的信息发布系统 CMS,像我们常访问的各个门户站点的新闻频道,甚至他们的其他频道,都是通过信息发布系统来管理和实现的,信息发
2015-10-08 20:05:18
390
转载 Hibernate 缓存机制
一、why(为什么要用Hibernate缓存?)Hibernate是一个持久层框架,经常访问物理数据库。为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。二、what(Hibernate缓存原理是怎样的?)Hibernate缓存包括两大类:Hibernate一级
2015-03-17 16:50:22
337
转载 什么是hibernate懒加载?什么时候用懒加载?为什么要用懒加载?
所谓懒加载(lazy)就是延时加载,延迟加载。 什么时候用懒加载呢,我只能回答要用懒加载的时候就用懒加载。 至于为什么要用懒加载呢,就是当我们要访问的数据量过大时,明显用缓存不太合适, 因为内存容量有限 ,为了减少并发量,减少系统资源的消耗, 我们让数据在需要的时候才进行加载,这时我们就用到了懒加载。 比如部门ENTITY和员工ENTITY,部门与员工1对多,如果lazy设置为 false
2015-03-17 11:35:19
405
转载 懒加载异常的解决办法
采用的是SSH2框架,要实现一个级联功能,具体实现如下:Department部门包括许多下级Department,在查询第一级Department时,一切OK,但是当查询第一级Department下的子Department时,出现了如下错误,其中Department.hbm.xml中的配置文件为 <many-to-one name="parent"class="Department" colu
2015-02-25 17:13:20
659
libopencv-java470.dylib和opencv-470.jar
2023-06-20
百万英雄,芝士超人等答题,自动搜索答案,答题辅助
2018-01-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人