-
cit:让你从github的下载速度提高一万倍的小软件
序言github上有很多好项目,但是国内用户连github却非常的慢.每次都要用插件或者其他工具来解决. 这次自己做一个小工具,输入github原地址后,就可以自动替换为代理地址,方便大家更快速的下载. 速度太慢可以看下gitee仓库地址:https://gitee.com/solider245/cit github仓库地址:https://github.com/solider...
-
Java:Lombok插件用法笔记
1、Lombok是什么东东?官方介绍Lombok项目是一个Java库,它可以自动嵌入你的编辑器和构建工具中,从而减少你的代码量。永远不要再写另一个getter或equals方法,它带有一个注释的你的类有一个功能全面的生成器,自动化你的日志记录变量等等功能。简单来说就是使用Lombok,通过注解,让你不再需要编写getter、equals等属性方法,减少样板代码的编写、起到提升代...
-
最基础的分类统计SQL语句
原始数据如下:想要得到的结果:sql语句:select dw,count(distinct zy) as zycount from table group by dw
-
记录基于vue在我的真实项目中的性能优化
最近一段时间一直在处理公司的一个内部项目哈,因为页面卡的问题被吐槽了一个月了。因为是接手别人的项目,虽然说不是自己直接造成的。但是解决这个问题已是迫在眉睫了。可能我们在做前端开发的时候,很少去关注内存的问题,这是因为JS有自己垃圾回收机制,如果代码不是滥用闭包,一般来说,不会出现性能问题。先来大概说下我的项目中性能瓶颈的现象:项目是一个基于electron+vue的一个类似微信...
-
VMware平台安装Windows Server 2016
如何在VMware ESXi上安装Windows Server 2016废话不多说,直接上干货……配置步骤1,点击 VMware ESXi 【创建/注册虚拟机】,选择【创建新虚拟机】,然后点击【下一页】。2,输入虚拟机名称,比如“Window2016证书服务器”,然后点击【下一页】。3,选择默认存储,继续点击【下一页】。4,点击【添加其他设备】,添加【CD/DVD驱动器】,用来...
-
DevOps知识框架体系和最佳实践案例整理
注:该文为我对网上发布的DevOps知识库Ledge的一个阅读笔记整理。Ledge(源自 know-ledge,意指承载物)知识平台是基于我们所进行的一系列 DevOps 实践、敏捷实践、精益实践提炼出来的知识体系。DevOps知识框架概述对于DevOps研发运维一体化,我在前面也写过了不少文章,包括了基础知识,敏捷研发,持续集成和交付,流水线设计,DevOps和容器云的集成,...
-
程序OOM,通过log日志定位,不要说自己具备高并发开发经验
首先说一下,本人在开发中遇到的OOM异常基本也是通过看log日志去定位的(很多OOM异常是因为出现死循环或者查询返回的数据量多大,没有分页等等,通过异常日志我们确实能很快定位,但这不是正确的姿势。),只是碰巧刚好日志打印的异常栈信息就是对应的代码问题。很多博客也说了,定位OOM异常通过分析dump日志,因此深表疑惑,为什么明明看log日志就能解决的非要去分析dump日志,网上也...
-
分布式常见问题分析及解决方案
1、分布式和集群概念分布式:可以简单理解成将一个独立的系统拆分成很多个子系统,每个子系统可以单独的运行(比如用户登录、订单支付),这个称之为分布式系统。集群:可以简单理解就是对于任何一个系统至少部署了两台服务器上,两台服务器上的应用完全一致。称之为集群。2、一致性Hash问题及解决方案2.1Hash溯源思考:为啥需要使用Hash?我们带着问题踏上寻求之旅,要想知道为啥使用Has...
-
Autofac一个优秀的.NET IoC框架
1 简介Autofac与C#语言的结合非常紧密,并学习它非常的简单,也是.NET领域最为流行的IoC框架之一。2 使用首先,将Autofac的NuGet软件包安装到您的应用程序中。Autofac 然后,我们通过创建ContainerBuilder来注册组件。var builder = new ContainerBuilder(); builder.RegisterType<...
-
jdk8流处理toMap异常Duplicate key解决
背景在开发过程中,我们经常要将list按照规则转为map,而jdk8提供了一个很好的工具:Collections.toMap,使用这个方法时,往往会有一些坑。Collections.toMap示例创建一个pojoimport java.io.Serializable; import lombok.Data; @Data public class Student implem...
-
Mint UI-饿了么出品的开源、轻量的移动端 UI 组件库
一款轻量化的移动端 UI 组件库,风格中性,css3动效性能优秀,支持按需加载。关于 Mint UIMint UI 是饿了么前端团队出品的移动端 UI 组件库,基于 Vue 2.0 构建,继桌面 UI 组件库 Element UI 后又一个优秀的开源 UI 组件库,包含丰富的 CSS 和 JS 组件,能够快速构建出风格统一的页面,提升开发效率。Mint UI 组件库特性UI 设...
-
使用源码编译安装MySQL
前言环境准备源码编译安装下载MySQL源码解压源码文件开始编译操作安装MySQL数据库生成二进制安装包初始化MySQL创建系统用户执行数据库的初始化启动MySQL服务登录MySQL数据库总结前言前面的文章中,我们介绍了MySQL使用二进制文件安装的大致过程。今天我们来看下另外一种安装方式,那就是使用MySQL的源码自己编译安装MySQL。环境准备我们使用docker运行一个最新...
-
SpringBoot2.x拥抱本地缓存之王Caffeine
环境配置:JDK 版本:1.8Caffeine 版本:2.8.0SpringBoot 版本:2.2.2.RELEASE一、本地缓存介绍缓存在日常开发中启动至关重要的作用,由于是存储在内存中,数据的读取速度是非常快的,能大量减少对数据库的访问,减少数据库的压力。之前介绍过 Redis 这种 NoSql 作为缓存组件,它能够很好地作为分布式缓存组件提供多个服务间的缓存,但是 Red...
-
什么是依赖注入
1 定义依赖注入(Dependency Injection),简称DI,类之间的依赖关系由容器来负责。简单来讲a依赖b,但a不创建(或销毁)b,仅使用b,b的创建(或销毁)交给容器。2 例子为了把DI讲清楚,我们需要举一个简单例子。例子足够小,希望让你能直观的了解DI而不会陷入真实示例的泥潭。例子:小明要杀怪,那小明拿什么武器杀怪呢?可以用刀、也可以用拳头、斧子等。首先,我们创...
-
基于RBAC的权限访问系统基础
需要,基于RBAC的权限访问,采用SpringSecurity安全管理框架+SpringBoot+Mybatis数据库持久框架。数据库设计:user用户名:ennabled,accountNonExpired,accountNonLocked,CredentialsNonExpired默认为1role角色表:permission权限表:user_role 用户-角色中间表:ro...
-
接入谷歌Google人机验证:reCaptcha进行安全验证
我们在开发网站的时候,经常需要各种人机验证,那我们就来学习下,网站如何接入谷歌Google人机验证:reCaptcha进行安全验证,本次使用的是 Google人机验证 3.0版本 Google人机验证V3recaptcha v3为每个请求返回一个没有用户摩擦的分数,评分是基于用户与您的站点的交互,并使您能够为您的站点采取适当的行动。大约0.5是阀值,低于这个阀值,就需要进行一些...
-
Lombok在SpringBoot项目的中使用
SpringBoot结合Lombok整合对象我们之前介绍MyBatis Plus,AOP实现日志接口以及Swagger-UI等文章中都是使用了Lombok,可能有些人不是很了解Lombok,下面我们来介绍一下Java中的Lombok库。Lombok介绍Lombok是一个用于简化Java开发的,他的作用是自动插入编辑器和构建工具。通过注解方式,实现getter、setter、eq...
-
微信8.0更新:表情可炸群,新增状态栏,浮窗不再「狗皮膏药」
2011 年 1 月 21 日,微信发布了针对 iPhone 用户的 1.0 测试版。2021 年 1 月 21 日,十年后的同一天,微信发布了微信 8.0 for iOS。表情、状态、听歌、浮窗、输入法…… 这是进化后的新功能,一个能让你觉得新奇的微信新版本。懒人目录开屏动画表情状态听歌时的视觉化展示浮窗下拉微信首页红包封面可跳视频号开屏动画微信 7.0 版本大更新上线时,开...
-
会“炸裂”的微信8.0版来了:表情会动,还能和好友同时“搬砖”
1月21日,微信更新了十年来的第八个版本:微信8.0。在张小龙1月19日的演讲中,他预告过微信即将更新不少好玩的功能。在刚刚更新的版本中,动态表情、个人状态等功能的确很有趣。微信官方表示:微信8.0正在灰度测试中。新版本优化了浮窗样式,新增支持历史浏览内容、支持聊天和朋友圈图片文字提取等能力。此外,用户还可以体验会话表情的动画效果,以及微信团队带来的其他有趣好玩的实验项目。界面...
-
你们要的SpringBoot+JWT来了
什么是JWTJson Web Token (JWT)是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准(RFC 7519)该token被设计为紧凑且安全的 特别适用于分布式站点的单点登录(SSO)场景随着JWT的出现 使得校验方式更加简单便捷化JWT实际上就是一个字符串 它由三部分组成:头部 载荷和签名用[.]分隔这三个部分 最终的格式类似于:xxxx.xxxx....
-
Flink与Spring生态完美融合的脚手架工程
还在为开发Flink流处理应用程序时无法像开发Spring Boot程序那么优雅的分层以及装配Bean而烦恼吗?你可能面临如下苦恼:1. 开发的Flink流处理应用程序,业务逻辑全部写在Flink的操作符中,代码无法复用,无法分层2. 要是有一天它可以像开发Spring Boot程序那样可以优雅的分层,优雅的装配Bean,不需要自己new对象好了3. 可以使用各种Spring生...
-
Ocelot一个优秀的.NET API网关框架
1 什么是Ocelot?Ocelot是一个用.NET Core实现并且开源的API网关,它功能强大,包括了:路由、请求聚合、服务发现、认证、鉴权、限流熔断、并内置了负载均衡器与Service Fabric、Butterfly Tracing集成。2 如何使用Ocelot?首先,创建2个WebApi项目,WebApi01和WebApi02,地址分别https://localhos...
-
消息队列技术调研
消息队列的协议 AMQP:高级消息队列协议(AMQP,Advanced Message Queuing Protocol),RabbitMQ 和 HornetQ 都实现了该协议。 优势:功能最丰富,能够适用最多的场景。 劣势:其实现上不轻量化。 应用场景:简单的pub/sub模型无法满足要求的场景。 ZeroMQ:这是一种协议,也是一个开源组件,无中心化的broker。 优势:...
-
细说SpringBoot的自动装配原理
1.什么是SpringBoot? 对于spring框架,我们接触得比较多的应该是spring mvc、和spring。而spring的核心在于IOC(控制反转对于spring框架来说,就是由spring来负责控制对象的生命周期和对象间的关系)和DI(依赖注入IoC的一个重点是在系统运行中,动态的向某个对象提供它所需要的其他对象。这一点是通过DI(Dependency Inje...
-
Vuex状态管理插件
一、引言在Vue.js的组件基础中,我们在两个组件之间传值使用的是props(父组件向子组件传值),自定义事件this.$emit方法(子组件向父组件传值),对于简单的组件比较少的,而且依赖不复杂的我们可以使用,但是,如果组件很多,而且依赖很复杂,两个组件不一定是父子关系,而且关系比较远的时候,如果我们还是使用传统的传值方式,那将会是一场灾难(两个距离比较远的组件如果使用传统方...
-
如何在Spring Boot应用启动之后立刻执行一段逻辑
1. 前言不知道你有没有接到这种需求,项目启动后立马执行一些逻辑。比如简单的缓存预热,或者上线后的广播之类等等。如果你使用 Spring Boot 框架的话就可以借助其提供的接口CommandLineRunner和 ApplicationRunner来实现。2. CommandLineRunnerorg.springframework.boot.CommandLineRunne...
-
FreeMarker 常见指令
FreeMarker 常见指令assign 自定义变量指令使用 assign 指令你可以创建一个新的变量, 或者替换一个已经存在的变量。<#-- assign 自定义变量指令 语法: <#assign...
-
JavaScript专业级处理货币类库Currency.js
简要介绍Currency.js是一款专门处理货币值的开源免费的类库。它与Numeral.js非常相似,但是处理货币值上似乎要更专业。通过较灵活的API解决JavaScript常见的浮点问题,加减乘除的计算都可以做,处理货币的时候,还可以把分值单独提取出来,其格式转换的方法也相对工整。目前它在github拥有1.8k颗星,属于活跃项目。最新版本:2.0.3。Github地址htt...
-
Elasticsearch全攻略
时下不论是在全文搜索领域还是大数据即时处理领域ELK都一枝独秀,而ELK的核心在于Elasticsearch,ELK很秀源于Elasticsearch很棒。很多可能用过ELK但是对其核心Elasticsearch却知之甚少,本文我们就一起来学习Elasticsearch,从基本概念到生产使用一文全搞定。基础概念对于一个Elasticsearch(ES)的新手,首先需要学习一些基...
-
Docker容器日志清理(简单运维)
起因双11期间自己抢了台阿里云服务器,平时做些小项目和实验。为了方便采用docker-compose的方式部署。前段时间由于访问量变大造成磁盘空间占满,多次清理后找到一些清理日志的方法。期间也踩过坑。删除日志文件找到日志文件直接rm掉,此方法一定要重启应用才能保证磁盘空间的释放。docker-compose里面对单个应用进行配置 logging: driver: "...