Jenkins部署JAVA的全部教程,感受Jenkins的巨大魅力

因为很多种原因,昨儿学习了一下Jenkins部署,感受到了”詹金斯”的巨大魅力 为什么要使用它? 简单概括一句就是为了让部署更简单,更方便,更傻瓜,部署工作能一劳永逸 Jenkins是一种使用Java编程语言编写的开源持续集成软件工具,用于实时测试和报告较大代码库中的孤立更改。 Jenkins软件使开发人员能够快速找到并解决代码库中的缺陷,并自动进行构建测试。 简单介绍一下如何部署JAVA应用 运行jenkins 如果要是对我而言我认为最简单的就是下载Jenkins官网上的war包,直接放入tomcat中或者直接运行官网地址 左侧是正式版本,建议生产项目使用,右侧是测试版本,可用于

万恶的IEEE_754规范 ,直接让雪花算法全盘崩

万恶的IEEE_754规范 ,直接让雪花算法全盘崩 1.事情为什么发生? 事情还要从ID的架构说起,ID在架构师的要求下,我们改成了雪花算法(Snowflake)生成ID 简单的介绍一下雪花算法,SnowFlake算法生成id的结果是一个64bit大小的整数,它的结构如下图: SnowFlake可以保证: 1. 所有生成的id按时间趋势递增 2. 整个分布式系统内不会产生重复id(因为有datacenterId和workerId来做区分) 这样在遇到系统扩容,分库分表,数据迁移的场景下都不会出现太大的问题 大家伙一讨论,都觉得非常合理,就决定一股脑用雪花算法生成主键ID了 例

面试-简述基础中剩下的部分BIO,NIO,粘包/拆包,多路复用等

简述基础中剩下的部分BIO,NIO,粘包/拆包,多路复用等 BIO,NIO和AIO 简介: BIO:同步阻塞式IO,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,当然可以通过线程池机制改善。 NIO:同步非阻塞式IO,服务器实现模式为一个请求一个线程,即客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。 AIO(NIO.2):异步非阻塞式IO,服务器实现模式为一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程

面试-简论HTTP和HTTPS

简论HTTP和HTTPS 开门见山,这篇可以讲的很多 ,对于面试使用的不算太多,相对于TCP和UDP而言,HTTPS和HTTP这块可问的不算是太多 HTTP协议的缺点 * 通信使用明文,内容可能被窃听(重要密码泄露) * 不验证通信方身份,有可能遭遇伪装(跨站点请求伪造) * 无法证明报文的完整性,有可能已遭篡改(运营商劫持) HTTPS能解决这些问题吗? 能,https是在http协议基础上加入加密处理和认证机制以及完整性保护,即http+加密+认证+完整性保护=httpshttps并非应用层的一种新协议,只是http通信接口部分用ssl/tls协议代替而已。通常htt

面试-网络基础TCP和UDP的知识

基本记录一下网络基础(TCP和UDP)的知识 UDP和TCP UDP 首先说一下概念,UDP是一种无连接传输层协议,提供面向事务的简单不可靠的信息传输服务 特点: 1.udp是无连接的,也就是发送数据包无需建立连接,并因此减少了开销和发送数据之前不必要的时延 2.使用尽量努力交付数据 3.是面向报文的 可能你会有这样的疑问?那么为什么不直接使用IP协议而是要重新定义出一个UDP呢? 一个重要的原因的是IP协议并没有端口,UDP可以多通道,将数据送到对应的接口里面去 TCP 首先说一下概念,TCP是一种面向连接、可靠、基于字节流的传输协议,属于5层或者7层网络协议中的传输层协议

简论微前端的意义与发展

简论微前端的意义与发展 PS:以下言论部分整理于网友 先说一下为什么需要微前端 我抛出两个场景,大家思考一下: 1.新入职一家公司,老板给你一个5年,甚至于10年的老项目,需要你在这个项目上加入其他功能 2.你们起了一个新项目,老板只给了一个要求,要这个项目的架构在3年甚至于5年后依旧保持活力,不论为遗产项目 第一个场景我们初步一想,可以啊,我只需要把新功能用 react/vue 开发,反正他们都只是 ui library,给我一个dom 节点我想怎么渲染怎么渲染。但是你有没有考虑过这只是浮在表层的视图实现,沉在底下的工程设施呢?我要怎么把这个用 react 写的组件打出一个包,并且集成

初学者进——前端女友帮助整理前端常用css样式(极其有用)

html页面的元素有好多,分块儿级元素,行内元素,行内块儿级元素 块儿级元素 :像div,p,h这种的,不管宽是多少都占一整行 行内元素:像span,a,label啊,i这种的,如果写好几个就挨着排队,而且width、margin-top,margin-bottom、padding-top对行内元素都没有用, padding-left,right,bottom和margin-left、margin-right是好用的,也就是margin的竖直方向上数值无效,padding只有padding-top数值无效 1.子债父偿: 一个父元素margin:0;子元素给定margin-top:10

解决 sub_filter 不能替换 Gzip 过的内容

在微信小程序web-view跳转外部链接?甲方的需求千奇百怪,好在办法总比困难多。不是只允许业务域名吗,不大可能在别人网站放一个 txt 校验吧?此时反代不失为解决业务域名限制的一个办法,总之一切为目标服务。 ⚠️ 就算绕开了限制,由于内容经你方服务器转发,你方也须承担责任。另请注意,撰文时个人类型的小程序暂不支持内嵌网页。本文假设我方域名 yourdomain.com,对方域名 example.com。 1)proxy_pass转发下?感觉事情没那么简单。 1 2 3 4 5 6 7 location / { ... proxy_pass https://examp

VUE中index.html什么时候加载的mainjs呢

今天突然思考到一个问题,index.html文件中是vue项目的主页,项目入口,那么mainjs是啥时候被index加载运行的呢?是怎么被运行的呢? 1.先来看看vue项目的一个结构解析(非常感谢磊阿磊阿磊磊磊的图片) index.html—主页,项目入口 App.vue—根组件 main.js—入口文件 2.通过2张图片搞清楚index和mainjs的关系和配置 很明显看得出,mainjs中是配置了咱们的页面该渲染在index中的app节点上的,但是vue项目访问最开始的文件是index.html,这中间mainjs是如何被indexhtml引用的呢? 3.最后在packag

推荐一个css抖动库

推荐一个css抖动库 CSS Shake 是一套 CSS3 动画特效,让页面的 DOM 元素实现各种效果的抖动(Shake), 这些效果可以轻松的被应用到按钮、LOGO 以及图片等元素。 所有这些效果都是只需要单一的标签,加上特定的 class 即可。 因为使用了 CSS3 过渡、转换和动画效果,因此只支持 Chrome、Firefox 和 Safari 等现代浏览器。 官网:http://elrumordelaluz.github.io/csshake/

全站利用pjax无刷新展示

全站利用pjax无刷新展示 前言 终于抽出空写这篇文章了,还是在上班事件摸鱼写的 不得不说,pjax很好用,很强,很好理解,并且帮助开发者省去了很大部分的工作量 但是由于整站替换后,有些事件还是得自己写一下 简单的记录一下,自己实现全站pjax的一系列过程吧 简介 虽然传统的 ajax 方式可以异步无刷新改变页面内容,但无法改变页面 URL,因此有种方案是在内容发生改变后通过改变 URL 的 hash 的方式获得更好的可访问性(如 https://liyu365.github.io/BG-UI/tpl/#page/desktop.html), 但是 hash 的方式有时候不能很

Trilateration三边测量定位算法

Trilateration(三边测量)是一种常用的定位算法 已知三点位置 (x1, y1), (x2, y2), (x3, y3) 已知未知点 (x0, y0) 到三点距离 d1, d2, d3 以 d1, d2, d3 为半径作三个圆,根据毕达哥拉斯定理,得出交点即未知点的位置计算公式: ( x1 - x0 )2 + ( y1 - y0 )2 = d12 ( x2 - x0 )2 + ( y2 - y0 )2 = d22 ( x3 - x0 )2 + ( y3 - y0 )2 = d32 设未知点位置为 (x, y), 令其中的第一个球形 P1 的球心坐标为 (0, 0),P2 处于相

滴滴开源:DoraemonKit来了,程序员的开发工具箱

DoraemonKit /‘dɔ:ra:’emɔn/,简称DoKit,中文名 哆啦A梦,意味着能够像哆啦A梦一样提供给他的主人各种各样的工具。Just Do Kit。 DoraemonKit是什么? DoraemonKit 是一个功能平台,工具集合,和名字一样,哆啦A梦,能够让每一个 App 快速接入一些常用的或者你没有实现的一些辅助开发工具、测试效率工具、视觉辅助工具,而且能够完美在 Doraemon 面板中接入你已经实现的与业务紧密耦合的一些非通有的辅助工具,并搭配我们的dokit平台,让功能得到延伸,接入方便,便于扩展。 DoraemonKit有什么特色? 1、DoraemonK

整理一下关于jq队列和回调

整理一下关于jq队列和回调 jq队列 首先说一点jQuery的队列依赖缓存机制事件,它同时是animate的基础 它不像事件机制、缓存机制、回调机制一样有自己的命名空间,由于比较简单,所以直接挂在到$和jQuery对象上 它提供的基础方法有 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 jQuery.extend({ queue: function( elem, type, data ) {   var queue;    // 如果存在e