2020 12-02

Windows 10系统运维之OpenSSH

随着PowerShell和OpenSSH的日渐成熟,在客户终端Windows居多的运维之中,使用Win32-OpenSSH和Powershell来管理一些客户机变成了相当实用的一种解决方案。 OpenSSH是安全Shell(SSH)工具的开放源代码版本,Linux及其他非Windows系统的管理员使用此类工具跨平台管理远程系统。  SSH基于客户端-服务器体系结构,用户在其中工作的系统是客户端,所管理的远程系统是服务器。 OpenSSH包含一系列组件和工具,用于提供一种安全且

2020 12-02

16.java设计模式之迭代器模式

基本需求: 展示一个学校的结构,比如一个学校下面有多个学院,学院下面有多个系,对其节点主要是遍历,与组合模式略有不同 传统方案: 学校<-学院<-系依次继承 这种方式,在一个页面中展示出学校的院系组成,一个学校有多个学院,一个学院有多个系,因此这种方案,不能很好实现的遍历的操作,并且他们之间也没有继承关系,使用继承并不合适 基本介绍: 迭代器模式(Iterator)是常用的设计模式,属于行为型模式,这种模式用于顺序访问集合对象的元素,不需要知道集合对象的底层表示 如果我们的

2020 12-02

Razorpay支付对接,JAVA对接篇

Razorpay作为印度本土的一家支付公司,类似中国的支付宝微信,本篇记录一下对接印度第三方支付公司 准备工作:   注册公司   申请Razorpay账号   申请正式环境 Razorpay工作台:   获取key_idkey_secret获取路径:工作台-->settings-->APIKeys   配置webhooks(支付回调)配置路径:工作台-->settings-->webhooks 图片示例:            &

2020 12-02

harbor私有仓库部署

Harbor 简介     Harbor是构建企业级私有docker镜像的仓库的开源解决方案,它是DockerRegistry的更高级封装,它除了提供友好的WebUI界面,角色和用户权限管理,用户操作审计等功能外,它还整合了K8s的插件(Add-ons)仓库,即Helm通过chart方式下载,管理,安装K8s插件,而chartmuseum可以提供存储chart数据的仓库【注:helm就相当于k8s的yum】。另外它还整合了两个开源的安全组件,一个

2020 12-02

JVM 堆中对象分配、布局和访问

本文摘自深入理解Java虚拟机第三版 对象的创建 Java是一门面向对象的语言,Java程序运行过程中无时无刻都有对象被创建出来。从语言层面看,创建对象只是一个new关键字而已,而在虚拟机中,对象(仅限于普通Java对象,不包括数组和Class对象等)的创建又是怎么一个过程呢? 以Hotspot虚拟机为例,当虚拟机遇到一条字节码指令,首先会检查这个指令的参数是否能在常量池中定位到一个符号引用,并检查这个符号引用代表的类是否已被加载、解析和初始化,如果没有,那么会先执行对应的类加载过程 类

2020 12-02

Vite ❤ Electron——基于Vite搭建Electron+Vue3的开发环境【一】

背景 目前社区两大Vue+Electron的脚手架:electron-vue和vue-cli-plugin-electron-builder, 都有这样那样的问题,且都还不支持Vue3,然而Vue3已是大势所趋, Vite势必也将成为官方Vue脚手架, 下图是尤雨溪在开发好Vite之后与webpack之父的对话    所以开发一个Vite+Vue3+Electron的脚手架的需求日趋强烈 我前段时间做了一个, 但是发现了一些与Vite有关的问题, 比如:Vite会把开发环境

2020 12-02

是兄弟!就来看这篇多线程!叁

开篇闲扯 打工人,打工魂,我们生而人上人。当“资本主义”逐渐禁锢我们人(大)上(韭)人(菜)肉体的时候,那一刻我才明白那个日不落帝国·资本主义收割机·瑞民族之光幸·瑞幸咖啡是多么的了不起,尽管我不懂咖啡,但还是要说一声谢谢!说到咖啡,喝完就想上厕所,对写bug的我来说太不友好了,毕竟我不(很)喜欢带薪上厕所。 回归本次的不正经Java文章,本次新闻主要内容有...tui~~嘴瓢了。上篇文章末尾处已经提到了,主要会把我对Synchronized的理解进行一次全方位的梳理,如果能帮助到大家吊打面试官

2020 12-02

数据结构第七节(图(中))

图(中) 在上一节的时候曾说过了图的两种遍历方式,在这一节将使用他们做更深层的应用,研究从一个点到另一个点的最短距离。 最短路径问题 单源无权图的最短路径 基本思想是,按照非递减的顺序,找出各个点的最短路。很容易想到按照非递减的顺序,也就是优先从原点开始,不断的计算与他相距最近的点的距离,整个的过程就是一个BFS。在bfs的过程中,我们之前是用一个布尔类型的数组来保存一个节点是否被访问。现在我们可以将其改成为int类型的二维数组,同时该数组还需要实现两个功能,对于第I个节点Vertexi,p[i

2020 12-02

死磕以太坊源码分析之区块和交易广播

死磕以太坊源码分析之区块和交易广播 ProtocolManager详解 ProtocolManager,从字面上看是协议管理器,负责着p2p通信协议的管理。它连接了p2p的逻辑层peer与顶层peer之间的调用,从顶层将协议传递至逻辑层,再从逻辑层得到message传递到顶层。 fastSync规定了同步的模式; acceptTxs是节点是否接受交易的阀门,只有当pm.acceptTxs==1时,节点才会接受交易。这个操作只会在同步结束后再开始,即同步的时候节点是不会接受交易的; Sub

2020 12-02

最近接了本分布式组件面试书的选题,请大家一起来提意见

   最近我在清华大学出版社出了一本书,《基于股票大数据分析的Python入门实战视频教学版》,京东链接:https://item.jd.com/69241653952.html,就顺便又接了本选题,Java分布式高并发组件面试攻略。以前我出的书,不能说不用心,题材也不能说不热门,但销量总一般,也就勉强卖完首次的印刷量。反思再三,总感觉我个人的想法可能脱离了市场的需求,所以在开笔之前,我就借此宝地,多听听大家的意见。 1 新书的策划动机  &nb