自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 实现简单的粒子连线

峰三实现简单的粒子连线先看一看效果:先分析粒子连线的实现步骤:1.初始化一张画布2.创建粒子  1)创建粒子即在画布上画一个个小圆  2)初始化粒子的属性:数量:num 300;半径:3;圆形为随机排列且满足:x:0<x<浏览器的宽度;y:0<y<浏览器的高度;3.粒子运动这里要理解粒子运动的本质并不是粒子在运动,而是不断地重新绘画粒子,擦除...

2019-03-31 19:59:17 1303

转载 聊聊jvm的CompressedClassSpace

序本文主要研究一下jvm的CompressedClassSpaceCompressedClassSpacejava8移除了permanent generation,然后class metadata存储在native memory中,其大小默认是不受限的,可以通过-XX:MaxMetaspaceSize来限制如果开启了-XX:+UseCompressedOops及-XX:+UseCompr...

2019-03-31 14:19:03 11374

转载 Unity3D热更新之LuaFramework篇[02]--用Lua创建自己的面板

本篇将我会先介绍一下如何配置Lua开发环境,然后分析在此框架中加载面板的流程,以及如何创建自己的面板。1、配置Lua开发环境有一点要说明的是,使用此种方式(ToLua+LuaFramework)做热更新,则意味着你的大部分逻辑都需要改用Lua语言来编写。因此,开发前得先得配置好Lua开发环境。毕竟,工欲善其事,必先利其器。环境配置大概分以下三个步骤:下载最新的就行,然后安装。...

2019-03-31 09:06:33 443 1

转载 JAVA8给我带了什么——流的概念和收集器

到现在为止,笔者不敢给流下定义,从概念来讲他应该也是一种数据元素才是。可是在我们前面的代码例子中我们可以看到他更多的好像在表示他是一组处理数据的行为组合。这让笔者很难去理解他的定义。所以笔者不表态。各位同志自行理解吧。在没有流以前,处理集合里面的数据一般都会用到显示的迭代器。用一下前面学生的例子吧。目标是获得学分大于5的前俩位同学。复制代码1 package com.aomi;2...

2019-03-30 21:52:47 97

转载 实验六 MapReduce实验:二次排序

实验指导:6.1 实验目的基于MapReduce思想,编写SecondarySort程序。6.2 实验要求要能理解MapReduce编程思想,会编写MapReduce版本二次排序程序,然后将其执行并分析执行过程。6.3 实验原理MR默认会对键进行排序,然而有的时候我们也有对值进行排序的需求。满足这种需求一是可以在reduce阶段排序收集过来的values,但是,如果有数量巨大...

2019-03-30 09:06:24 708

转载 什么是动态代理呢?

什么是动态代理呢?就是在java的运行过程中,动态的生成的代理类。(为了更熟悉的了解动态代理,你必须先熟悉代理模式,可点击设计模式之代理模式 阅读)我们知道java属于解释型语言,是在运行过程中,寻找字节码文件从而实现类加载的。但是字节码文件并不需要一定是硬盘中的class文件,也可以是来自网络、数据库或者是直接生成的数据流。因此这就给虚拟机动态的生成代理类提供了可能。Java 1.3 正...

2019-03-30 00:08:24 585

原创 【10】JMicro微服务-API网关

往下看前,建议完成前面1到9小节1. Api网关基本特性:Api网关作为对外网提供服务的基本入口,地位类似于NGINX,在微服务中一个重要组成部分;Api网关需要支持如下几个最基本功能:  a. 各种通讯协议接入,如HTTP,Socket,WebSocket;  b. 如种语言客户端API,如JS,NodeJS,GO,C#,Java等;  c. 负载均衡,为客户端请求在网关...

2019-03-29 14:40:52 302

转载 centos7上keepalived的安装和配置

 学习RocketMQ,先写一个Demo演示一下看看效果。一、服务端部署  因为只是简单的为了演示效果,服务端仅部署单Master模式 —— 一个Name Server节点,一个Broker节点。主要有一下过程。下载RocketMQ源码、编译(也可以网上下载编译好的文件),这里使用最新的4.4.0版本,下载好之后放在Linux上通过一下命令解压缩、编译。unzip rocketmq-a...

2019-03-29 12:23:42 181

转载 适用于nodercms的打包构建脚本

适用于nodercms的打包构建脚本Posted on 2019-03-28 16:22 Bowen Huang 阅读(25) 评论(0) 编辑 收藏背景最近自己用nodercms搭建了一个简单的博客系统,用户发布一些自己谁便谢谢的文章。感谢nodercms团队,这个cms轻量易用,用于做个人博客太方便了。开发了博客系统,肯定设计到部署到AWS或者阿里云等服务器上,那么,打包脚本就是必须的...

2019-03-28 16:55:48 212

转载 Android 2019最新面试实战总结

  Android:    今日头条屏幕适配的原理?    1:首先计算出 density,计算公式:当前设备屏幕总宽度(单位为像素)/ 设计图总宽度(单位为 dp) = densitydensity 的意思就是 1 dp 占当前设备多少像素计算density 的原因:在布局文件中填写的是什么单位,最后都会被转化为 px,系统就是通过上面的方法,将你在项目中任何地方填写的单位都转换为 px...

2019-03-28 09:46:42 200

转载 反射中Class.forName()和classLoader的区别

  搞清楚两者之间区别前,我们来了解下类加载过程。    一、类加载过程    1、加载    通过一个类的全限定名来获取定义此类的二进制字节流。    将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构。    在内存中生成一个代表这个类的Java.lang.class对象,作为方法区这个类的各种数据的访问入口。    2、验证    文件格式验证   ...

2019-03-27 15:31:18 506

转载 【java+selenium】网易云音乐刷累计听歌数

背景应该是在去年的时候,刷知乎看到一个问题,大概是说怎么刷网易云音乐个人累计听歌数,然后有一个高赞回答,贴了一段js代码,直接在浏览器console执行就可以了。当时试了下,直接一下子刷了有好几万。悲剧的是,第二天又回到原来的样子了,很明显这种方式被网易云音乐发现封掉了。而且后续网易云还针对累计听歌数加了一些限制,每天最多增加300首。今天带来一种通过java+selenium的方式,自动播放歌...

2019-03-27 09:35:38 3467

原创 前端笔记知识点整合之JavaScript(九)定时器&JSON&同步异步/回调函数&函数节流&call/apply

DOM已经提供给我们计算后的样式,但是还是觉得不方便,因为计算后的样式属性值都是字符串类型。不能直接参与运算。所以DOM又提供了一些API:得到的就是number类型的数据,不需要parseInt(),直接可以参与运算。 offsetLeft和offsetTop offsetWidth和offsetHeight clinetWidth和clinetHeigh...

2019-03-26 20:47:46 251

转载 C#净化版WebApi框架

  对于使用了Kubernetes作为应用运行环境的开发者而言,在同一个集群中我们可以使用命名空间(Namespace)快速创建多套隔离环境,在相同命名空间下,服务间使用Service的内部DNS域名进行相互访问。 基于Kubernetes强大的隔离以及服务编排能力,可以实现一套定义编排(YAML)多处部署的能力。    不过,一般来说Kubernetes使用的容器网络与开发者的所在的办公网络...

2019-03-26 13:14:10 683

转载 多线程十之CopyOnWriteArrayList源码分析

目录简介类结构源码解析构造方法add(E e)add(int index, E element)get(int index)remove(int index)迭代器Iterator遍历总结简介  我们都很熟悉容器对象ArrayList,并且在初学时就被告知ArrayList不是线程安全的:当我们在使用迭代器遍历ArrayList时,如果有其他线程修改了ArrayList对...

2019-03-25 09:59:45 83

转载 salesforce lightning零基础学习(十二) 自定义Lookup组件的实现

本篇中的组件主要有以下几个功能:1. 当输入两位以上字符情况下,从后台数据库检索并且放在搜索框列表中展示;2. 当选中搜索框列表中某个指定的单元后,选中的单元会以pill的方式展示在输入框中,同时输入框隐藏,列表选择框隐藏;3. 删除选中的单元以后,输入框变成可用状态。实现方式如下:包打开的结构如下:2. 创建svg.component,用于显示slds提供的ico...

2019-03-24 23:35:04 563

原创 使用 python 提取照片中的手机信息

使用 python 提取照片中的手机信息最近在做一个项目,有一个很重要的点是需要获取使用用户的手机信息,这里我选择从照片中获取信息。有人会问为什么不从手机里面直接获取设备信息。由于现在android系统的权限设置做的越来越好,直接获取信息很可能被认定为非法获取用户隐私,所以不打算使用这个思路。我的思路是,获取用户上传的图片中的信息,这样就可以尽量减少用户手机上的权限申请数量,让我们的应用更加...

2019-03-24 14:36:13 2371 1

转载 redis主从复制和sentinel配置高可用

一:redis主从配置1、环境准备 master : 192.168.50.10 6179 slave1: 192.168.50.10 6279 slave2: 192.168.50.10 63792、redis.conf配置文件配置master port 6179 requirepass 123456 #密码认证,...

2019-03-24 08:58:04 199

转载 CSS,JavaScript实现手风琴导航菜单

  padding: 10px;    border-bottom: 1px solid #d3d3d3;    background-color: #2e8b57;    }    .second-menu-item {    padding: 10px 10px 10px 20px;    border-bottom: 1px solid #d3d3d3;    ...

2019-03-23 22:24:49 644

转载 Spring学习记录

Java类定义配置@Configuration //标记为配置类@ComponentScan //标记为扫描当前包及子包所有标记为@Component的类@ComponentScan(basePackageClasses = {接口.class,...}) //标记为扫描当前包及子包所有标记为@Component的类@ComponentScan(basePackages = {包名,包名,...

2019-03-23 09:31:37 87

转载 支持markwon写ppt的工具marp-调研

  1.需求    使用markdown写ppt    支持大部分markdown语法,含高亮、公式及表格等    支持转为html,在浏览器中展示    2.调研    符合条件的工具:marp    用法参考    Marp之简单编写PPT格式范例    office-example    3. 安装与插件    vscode有插件 md文件中添加如下注...

2019-03-22 17:26:31 1038

转载 grafana安装使用及与zabbix集成

grafana简介Grafana是一个完全开源的度量分析与可视化平台,可对来自各种各种数据源的数据进行查询、分析、可视化处理以及配置告警。Grafana支持的数据源: 官方:Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,MySQL等; 插件:open-falcon、zabbix... Centos 7.3 安装Grafan...

2019-03-22 13:30:20 642

转载 grafana安装使用及与zabbix集成

grafana简介Grafana是一个完全开源的度量分析与可视化平台,可对来自各种各种数据源的数据进行查询、分析、可视化处理以及配置告警。Grafana支持的数据源:官方:Graphite,InfluxDB,OpenTSDB,Prometheus,Elasticsearch,MySQL等;插件:open-falcon、zabbix...Centos 7.3 安装Grafana 6.0...

2019-03-22 09:24:02 563

转载 提升 Hive Query 执行效率 - Hive LLAP

提升 Hive Query 执行效率 - Hive LLAP从 Hive 刚推出到现在,得益于社区对它的不断贡献,使得 Hive执行 query 效率显著提升。其中比较有代表性的功能如 Tez (将多个 job整合为一个DAG job)以及 CBO(Cost-based-optimization)。Hive 在 2.0 版本以后推出了一个新特性名为 LLAP(Live Long And P...

2019-03-21 19:52:59 4537 2

转载 node.js解析微信消息推送xml格式加密的消息

 之前写过一个解密json格式加密的,我以为xml的和json的差不多,是上上个星期五吧,我的同事也是在做微信公众号里面的消息推送解密,发现好像只能使用xml加密格式的发送到服务器,我们去年也做过企业微信的那个消息推送的解密,真的是,感觉虽然都差不多,但是三者如果使用同样的代码的话完全不能复用,只是你做过一个之后,如果在做其他的就会了解他的原理。我在github上面正在完善node对于微信的各种A...

2019-03-21 13:58:10 904

转载 关于360插件化Replugin Activity动态修改父类的字节码操作

  近期在接入360插件化方案Replugin时,发现出现崩溃情况。    大概崩溃内容如下:    aused by: java.lang.ClassNotFoundException: Didn't find class "x.x.x.xActivity" on path:    我自己在插件代码里书写的Activity,我是全部继承了PluginActivity。不过由于在插件中...

2019-03-21 06:56:41 162

转载 angularJS 路由加载js controller 未定义 解决方案

  说明    本文主要说明,在angularJS框架使用中,angularJS 路由加载js controller 未定义 解决方案。    路由 $routeProvider 异步加载js    路由的基本用法,请查看官方文档,下面实例只说明,懒加载用法。    实例使用版本:    angularJS:1.7.6    ocLazyLoad:1.1.0    片段...

2019-03-20 20:47:27 1063

转载 Apache Ignite上的TensorFlow

  任何深度学习都是从数据开始的,这是关键点。没有数据,就无法训练模型,也无法评估模型质量,更无法做出预测,因此,数据源非常重要。在做研究、构建新的神经网络架构、以及做实验时,会习惯于使用最简单的本地数据源,通常是不同格式的文件,这种方法确实非常有效。但有时需要更加接近于生产环境,那么简化和加速生产数据的反馈,以及能够处理大数据就变得非常重要,这时就需要Apache Ignite大展身手了。  ...

2019-03-20 14:04:53 212

转载 扩展资源服务器解决oauth2 性能瓶颈

OAuth用户携带token 请求资源服务器资源服务器拦截器 携带token 去认证服务器 调用tokenstore 对token 合法性校验资源服务器拿到token,默认只会含有用户名信息通过用户名调用userdetailsservice.loadbyusername 查询用户全部信息详细性能瓶颈分析,请参考上篇文章《扩展jwt解决oauth2 性能瓶颈》本文是针对传统使用UUID...

2019-03-20 09:05:40 864

转载 C# WPF上位机实现和下位机TCP通讯

下位机使用北京大华程控电源DH1766-1,上位机使用WPF。实现了电压电流实时采集,曲线显示。上午在公司调试成功,手头没有程控电源,使用TCP服务端模拟。昨天写的TCP服务端正好排上用场。界面如下:服务端服务端实在上篇基础上实现的。需要做如下更改:while (true){...

2019-03-19 22:02:44 1224

转载 git 入门教程之分支总览

分支就是一条独立的时间线,既有分支,必有主干,正如一棵树谈到树枝,必有树干一样的道理.我们先前对git的全部操作默认都是在主干上进行的,这个主干也是一种特殊的分支,名为master分支.无论是穿越历史还是撤销更改,我们都或多或少接触过时间线,git管理的版本串在一起就组成了这个时间线,其中master分支是当前分支,HEAD指向master,因此HEAD相当于指向了最新的版本....

2019-03-19 21:51:54 132

转载 Logger.error方法之打印错误异常的详细堆栈信息

  一、问题场景    使用Logger.error方法时只能打印出异常类型,无法打印出详细的堆栈信息,使得定位问题变得困难和不方便。    二、先放出结论    Logger类下有多个不同的error方法,根据传入参数的个数及类型的不同,自动选择不同的重载方法。    当error(Object obj)只传入一个参数时会将异常对象作为Object使用,并最终当做String打印...

2019-03-19 20:18:03 11209

转载 Java有四个元注解

Java有四个元注解,自动继承java.lang.annotation.Annotation。什么是元注解,可以理解为其他普通注解进行解释说明@Target该注解的使用范围,限定应用场景。枚举类 ElemenetType 中TYPE:类,接口 FIELD:字段,枚举的常量 METHOD:函数(方法) PARAMETER:参数 CONSTRUCTOR:构造函数 ANNOTA...

2019-03-19 14:34:42 397

转载 FlatList

  FlatList    之前使用的组件是ListView,当时要添加一个下拉刷新,上拉加载的功能,所以对ListView做了一些封装,但是后来看官方文档,不建议再使用ListView,因为效率问题,做过Android的朋友都知道,Android的ListView如果不自己处理一下,也是有效率问题的。所以官方又推出了FlatList,而且自带上拉下拉的功能。    功能简介    完...

2019-03-19 10:02:49 903

转载 Spring异步调用原理及SpringAop拦截器链原理

 开启异步调用只需一个注解@EnableAsync@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Import(AsyncConfigurationSelector.class)public @interface EnableAsync { /** * Indica...

2019-03-18 20:20:52 193

转载 本次主要介绍springmvc配置解析。

  说在前面    本次主要介绍springmvc配置解析。    springmvc配置解析    本次介绍MvcNamespaceHandler。    进入到这个方法org.springframework.web.servlet.config.ViewResolversBeanDefinitionParser#parse    public BeanDefinition ...

2019-03-18 13:33:47 170

转载 浏览器加载网页资源的原理

  1、HTML支持的组要资源类型    在浏览器内核有一个管理资源的对象CachedResource类,在CachedResource类下有很多子类来分工不同的资源管理,这些资源管理子类分别是:    资源 资源管理类    HTML MainResource ===&gt; CachedRawResource    JavaScript CachedSc...

2019-03-18 08:32:08 1185

转载 Spring事务说明与自实现

  要使用Springboot的事务其实非常简单,在启动类上添加@EnableTransactionManagement,在Service的类或者方法上使用@Transactional就可以了。    事务本身的4大特性    原子性(Atomicity) 指事务必须是一个不可分割的整体    一致性(Consistency) 指执行完数据库操作后,数据不会被破坏   ...

2019-03-18 08:23:23 85

转载 恕我直言,在座的各位根本写不好Java!

  其实,本不想把标题写的那么恐怖,只是发现很多人干了几年 Java 以后,都自认为是一个不错的 Java 程序员了,可以拿着上万的工资都处宣扬自己了,写这篇文章的目的并不是嘲讽和我一样做 Java 的同行们,只是希望读者看到此篇文章后,可以和我一样,心平气和的争取做一个优秀的程序员。    文章核心    讲述方向    由于一直从事移动互联网相关工作,Java 开发中经常和移动端打...

2019-03-17 20:41:05 280

转载 Nginx多进程高并发、低时延、高可靠机制在缓存(redis、memcache)twemproxy代理中的应用

1. 开发背景 现有开源缓存代理中间件有twemproxy、codis等,其中twemproxy为单进程单线程模型,只支持memcache单机版和redis单机版,都不支持集群版功能。 由于twemproxy无法利用多核特性,因此性能低下,短连接QPS大约为3W,长连接QPS大约为13W,同时某些场景时延抖动厉害。 为了适应公有云平台上业务方的高并发需求,因此...

2019-03-17 11:05:46 235

空空如也

空空如也

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

TA关注的人

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