自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 分布式Session共享解决方案

实现原理:就是当Web服务器接收到http请求后,当请求进入对应的Filter进行过滤,将原本需要由web服务器创建会话的过程转交给Spring-Session进行创建,本来创建的会话保存在Web服务器内存中,通过Spring-Session创建的会话信息可以保存第三方的服务中,如:redis,mysql等。Web服务器之间通过连接第三方服务来共享数据,实现Session共享分布式Sess...

2018-12-14 13:36:08 160

原创 基于 HTML5 WebGL 的 3D SCADA 主站系统

这个例子的初衷是模拟服务器与客户端的通信,我把整个需求简化变成了今天的这个例子。3D 的模拟一般需要鹰眼来辅助的,这样找产品以及整个空间的概括会比较明确,在这个例子中我也加了,这篇文章就算是我对这次项目的一个总结吧。本文动图:进入正题,整个例子用了两百多行的代码来实现的,这就是我喜欢用 HT 的原因,能够快速开发。现在 Web3d 技术兴起,大体就是分为两派:插件派和 HTML5 派。HT 就是基...

2018-02-04 20:09:54 530

原创 Go基础--goroutine和channel

goroutine 在go语言中,每一个并发的执行单元叫做一个goroutine这里说到并发,所以先解释一下并发和并行的概念:并发:逻辑上具备同时处理多个任务的能力并行:物理上在同一时刻执行多个并发任务当一个程序启动时,其主函数即在一个单独的goroutine中运行,一般这个goroutine是主goroutine如果想要创建新的goroutine,只需要再执行普通函数或者方法的的前面加上关键字...

2018-02-02 21:10:03 462

原创 【SqlServer系列】浅谈SQL Server事务与锁(上篇)

一 概述在数据库方面,对于非DBA的程序员来说,事务与锁是一大难点,针对该难点,本篇文章试图采用图文的方式来与大家一起探讨。“浅谈SQL Server 事务与锁”这个专题共分两篇,上篇主讲事务及事务一致性问题,并简略的提及一下锁的种类和锁的控制级别。下篇主讲SQL Server中的锁机制,锁控制级别和死锁的若干问题。二 事务1 何为事务预览众多书籍,对于事务的定义,不同文献不同作者对其虽...

2018-02-02 18:53:28 618

原创 JavaScript ES6 module 模块

在使用JavaScript开发大型项目时,模块开发概念是一个必须考虑的问题。其目的就是通过命名空间对各类业务对象进行一定的封装,防止命名冲突。本篇着重介绍ES6 module中的export和import概念。ES5的模块支持方案 在ES6之前,JavaScript本身没有模块支持,但社区创造了令人印象深刻的解决方案。两个最重要的(也是不相容的)标准是:AMD 和 CommonJS。1.1...

2018-01-31 18:50:45 252

原创 原生 JS 实现一个瀑布流插件

更好的阅读体验,点击 原文地址瀑布流布局中的图片有一个核心特点 —— 等宽不定等高,瀑布流布局在国内网网站都有一定规模的使用,比如pinterest、花瓣网等等。那么接下来就基于这个特点开始瀑布流探索之旅。基础功能实现首先我们定义好一个有 20 张图片的容器, #waterfall { position: relative; } .waterfa...

2018-01-30 20:43:56 627

原创 深入理解final关键字以及一些建议

引子:一说到final关键字,相信大家都会立刻想起一些基本的作用,那么我们先稍微用寥寥数行来回顾一下。一、final关键字的含义final是Java中的一个保留关键字,它可以标记在成员变量、方法、类以及本地变量上。一旦我们将某个对象声明为了final的,那么我们将不能再改变这个对象的引用了。如果我们尝试将被修饰为final的对象重新赋值,编译器就会报错。二、用法1.修饰变量final修饰在成员变量...

2018-01-30 18:46:05 833

原创 拥抱变化,渴望挑战 - 记我的 2017

年终唯一永远不改变,是不停地改变。2017,改变了太多太多,也经历了太多太多的第一次,在人生的长河中终究会成为最重要的一年之一。翻翻 去年的年终总结,很惭愧,很多计划并没有实现,但是也做了很多未预料到的事情。杭州2017 最重要的事情,无疑是从上海回到了杭州,为什么用回字呢?因为楼主作为浙江人,而且在杭州度过了大学的四年时光。毕业后为了当时的女朋友,义无反顾地跑去了上海,从而顺利错过了杭州房价最低...

2018-01-28 20:00:28 191

原创 QT5 Thread线程

QT5 Thread线程继承QThread方式一.首先分析一下 QTimer Class与 Sleep()函数之间的秘密QTimer *t = new QTimer(*parent); //创建QTimer 对象t->start(_time); //计时开始每隔_time时间自动触发&QTimer::timeout信号t->stop(); //结束计时Sleep() //win...

2018-01-27 19:52:52 584

原创 关于IDE与环境变量的一点说明

环境变量就是当计算机要执行操作时,在环境变量所制定的范围内查找该操作。比如linux的ls命令,计算机就需要在$PATH规定的目录中寻找该ls的可执行文件。java的classpath,在该规定的目录中寻找class文件。JAVA_HOME,在该目录中寻找java命令。在Intellij idea中添加新的jar包,明明已经添加进去了,代码都可以编写,但是编译的时候提示了ClassNotFound...

2018-01-26 19:42:26 1223

原创 libevent--快速入门

libevent–快速入门 一.简介 libevent是一个c语言写的事件驱动库,轻量级,专注于网络,跨平台特性好,支持多种 I/O 多路复用.支持I/O,定时器和信号等事件,允许设置注册事件优先级.二.基本使用场景和事件流程 (1)初始化事件根基(槽)struct event_base *event_base_new(void); struct event_base *event_ini...

2018-01-26 18:41:42 594

原创 操作系统简介

一,为什么要有操作系统  现代的计算机系统主要是由一个或者多个处理器,主存,硬盘,键盘,鼠标,显示器,打印机,网络接口及其他输入输出设备组成。  一般而言,现代计算机系统是一个复杂的系统。  其一:如果每位应用程序员都必须掌握该系统所有的细节,那就不可能再编写代码了(严重影响了程序员的开发效率:全部掌握这些细节可能需要一万年….)  其二:并且管理这些部件并加以优化使用,是一件极富挑战性的工作,于...

2018-01-21 23:06:28 600

原创 漫话JavaScript与异步·第三话——Generator:化异步为同步

一、Promise并非完美我在上一话中介绍了Promise,这种模式增强了事件订阅机制,很好地解决了控制反转带来的信任问题、硬编码回调执行顺序造成的“回调金字塔”问题,无疑大大提高了前端开发体验。但有了Promise就能完美地解决异步问题了吗?并没有。首先,Promise仍然需要通过then方法注册回调,虽然只有一层,但沿着Promise链一长串写下来,还是有些让人头晕。更大的问题在于Promis...

2018-01-18 20:55:05 89

原创 超高性能管线式HTTP请求(实践·原理·实现)

这里的高性能指的就是网卡有多快请求发送就能有多快,基本上一般的服务器在一台客户端的压力下就会出现明显延时。 该篇实际是介绍pipe管线的原理,下面主要通过其高性能的测试实践,解析背后数据流量及原理。最后附带一个简单的实现实践 先直接看对比测试方法 测试内容单一客户的使用尽可能快的方式向服务器发送一定量(10000条)请求,并接收返回数据 对于单一客户端对服务器进行http请求,一般我们的方...

2018-01-18 18:58:47 276

原创 Spring Boot实战:集成Swagger2

一、Swagger简介  上一篇文章中我们介绍了Spring Boot对Restful的支持,这篇文章我们继续讨论这个话题,不过,我们这里不再讨论Restful API如何实现,而是讨论Restful API文档的维护问题。  在日常的工作中,我们往往需要给前端(WEB端、IOS、Android)或者第三方提供接口,这个时候我们就需要给他们提供一份详细的API说明文档。但维护一份详细的文档可不是一...

2018-01-15 18:47:11 438

原创 【分享】2017 开源中国新增开源项目排行榜 TOP 100

2017 年开源中国社区新增开源项目排行榜 TOP 100 新鲜出炉!这份榜单根据 2017 年开源中国社区新收录的开源项目的关注度和活跃度整理而来,这份最受关注的 100 款开源项目榜单在一定程度上预示着业界的最新流行趋势。可以看到,前十名中有九个是国内开发者开发的开源项目,这个比例相比于去年已大大提高。此外,榜单中的项目已经过筛选,均符合国际 OSI 批准的开源协议。值得注意的是,今年关于人工...

2018-01-14 20:32:21 645

原创 EF Core 使用编译查询提高性能

今天,我将向您展示这些EF Core中一个很酷的功能,通过使用显式编译的查询,提高查询性能。不过在介绍具体内容之前,需要说明一点,EF Core已经对表达式的编译使用了缓存;当您的代码需要重用以前执行的查询时,EF Core将使用哈希查找并从缓存中返回已编译的查询。关于这一点,您可以查阅github上面的代码QueryCompiler.cs 不过,您可能希望直接对查询进行编译,跳过哈希的计算和缓...

2018-01-14 19:03:01 2176

原创 从面试官角度来告诉大家,哪些人能面试成功 面试成功不是靠撞大运,而是需要靠技能和技巧。俗话说,一力降十会,如果候选人技能确实强,那么什么技巧都不需要,...

面试成功不是靠撞大运,而是需要靠技能和技巧。俗话说,一力降十会,如果候选人技能确实强,那么什么技巧都不需要,如果属于可上可下的情况,那么技巧就相对重要了。本人之前写了两篇博文,你的简历能帮你争取到面试机会吗,以及从面试官角度告诉大家如何准备项目方面的描述,均得到了比较好的反响。这里我们就从面试流程入手,告诉大家哪些人能面试成,本文同样是是据java web轻量级开发面试教程改编的。如下是正文。...

2018-01-11 19:02:45 1787 1

原创 从面试官角度告诉大家如何准备项目方面的描述

之前写了篇博文,你的简历能帮你争取到面试机会吗,反响不错,也承蒙管理员抬爱,放在首页,为了答谢大家,在这篇博文里,我来分享些如何准备和叙述项目经验的技巧。本文的内容是根据java web轻量级开发面试教程改编的。1 缺乏相关项目经验的补救措施 在之前的你的简历能帮你争取到面试机会吗博文里,已经给出过增加项目匹配度的技巧。其实大家在跳槽换时,遇到的最大问题可能不是技术方面的问题,而是缺乏足...

2018-01-10 20:08:59 15071 2

原创 再见乱码:5分钟读懂MySQL字符集设置

一、内容概述 在MySQL的使用过程中,了解字符集、字符序的概念,以及不同设置对数据存储、比较的影响非常重要。不少同学在日常工作中遇到的“乱码”问题,很有可能就是因为对字符集与字符序的理解不到位、设置错误造成的。本文由浅入深,分别介绍了如下内容:字符集、字符序的基本概念及联系 MySQL支持的字符集、字符序设置级,各设置级别之间的联系 server、database、table、column...

2018-01-09 19:05:06 939

原创 HDFS租约实践

一、租约详解 Why租约 HDFS的读写模式为 “write-once-read-many”,为了实现write-once,需要设计一种互斥机制,租约应运而生 租约本质上是一个有时间约束的锁,即:在一定时间内对租约持有者(也就是客户端)赋予一定的权限HDFS租约模型 Lease和DFSClient的对应关系为一对一(即:在Hdfs-Server端,为每个DFSClient建立一个Lea...

2018-01-04 20:27:07 993

空空如也

空空如也

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

TA关注的人

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