自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Eshare分享

分享学习心得

  • 博客(196)
  • 收藏
  • 关注

原创 Docker深入浅出系列 | 5分钟搭建镜像仓库

Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主要偏重实战,尽量讲干货,会根据本人理解去做阐述,具体官方概念可以查阅官方教程,因为本系列教程对前一章节有一定依赖,建议先学习前面章节内容。本系列教程导航:Docker深入浅出系列 | 容器初体验Docker深入浅出系列 | Image初体验Docker深入浅出...

2020-03-17 22:15:00 480

原创 Docker深入浅出系列 | Swarm多节点实战

vagrantfileboxes = [ { :name => "manager-node", :eth1 => "192.168.101.11", :mem => "1024", :cpu => "1" }, { :name => "worker01-node"...

2020-03-16 22:46:28 2470

原创 Docker深入浅出系列 | Docker Compose多容器实战

下载docker-composecurl -L https://get.daocloud.io/docker/compose/releases/download/1.25.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/docker-co...

2020-03-03 16:49:45 507

原创 Docker深入浅出系列 | 单节点Nginx+Springboot实战

Nginx+Springboot实战文章目录**Nginx+Springboot实战****前期准备****实战目标****实战步骤****创建Docker网络****搭建Mysql容器****搭建额度服务集群**搭建Nginx服务**验证额度服务****附录**Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主要...

2020-03-01 16:02:30 1078

原创 Docker深入浅出系列 | 容器数据持久化

Docker深入浅出系列 | 容器数据持久化

2020-02-27 14:23:58 618

原创 Docker深入浅出系列 | 单节点多容器网络通信

文章目录**教程目标****准备工作****带着问题开车****同一主机两个容器如何相互通信?****怎么从服务器外访问容器****Docker的三种网络模式是什么****Docker网络通信原理****计算机网络模型回顾****Linux中的网卡****查看网卡接口信息****网卡的操作****```ip a```核心信息详解****网卡的配置文件****修改网卡配置,绑定一个新ip地址****...

2020-02-06 23:05:05 1928

原创 Docker深入浅出系列 | Image实战演练

Docker已经上市很多年,不是什么新鲜事物了,很多企业或者开发同学以前也不多不少有所接触,但是有实操经验的人不多,本系列教程主要偏重实战,尽量讲干货,会根据本人理解去做阐述,具体官方概念可以查阅官方教程,因为本系列教程对前一章节有一定依赖,建议先学习前面章节内容。本系列教程导航:Docker深入浅出 | 容器初体验课程目标回顾Image核心知识了解如何制作自定义Image的两种方...

2020-01-30 23:00:44 546

原创 Docker深入浅出系列 | 容器初体验

文章目录**教程目标****预备工作****容器与虚拟化技术****什么是Docker****为什么要用Docker****事例****什么是容器镜像和容器****容器与虚拟机的区别****Vagrant与Docker的区别****Docker引擎和架构****Docker的镜像分层****VirturalBox和Docker如何搭配使用****主体机器如何与客体机器上的容器进行通信****环境搭...

2020-01-28 04:33:52 1113

原创 高吞吐SFTP连接池设计方案

我们如果使用这种可配置连接池进行访问,对接上游时最好时最好跟上游确认他们服务器可以承受的Session数量和Channel数量是多少,宁愿少配也不要多配。但是对于一般上游,如果使用的是Linux服务器,默认值就是上面一开始提到的,我们客户端连接池保守配置可以设置成,这样子最大并行可以处理30个文件,MaxSession一般不建议设置太多,非常消耗系统资源。也有很多上游是使用其他SFTP服务管理工具,但是基本限制参数差不多。以上连接池还有很多需要优化的地方,大家可以根据需要自己去优化。

2024-03-09 22:53:58 887 2

原创 Jsch版本升级引发的血案

我们项目需要通过SFTP对接大量上下游获取数据,但是由于某一个上游需要更换作为他们的SFTP服务,他们的SFTP服务使用更高版本的OpenSSH服务,原有的一些密钥算法已经不再支持,我们目前使用的Jcraft公司发布的Jsch版本已经没办法满足,需要进行升级。但是Jcraft公司的Jsch0.1.55版本从2018年开始就停止维护,我们不得不升级到另一个mwiede继续维护的Jsch版本(基于原有0.1.55fork的分支)以满足更多算法的需要。

2024-01-25 22:07:48 1002 2

原创 解决方案 | 基于SFTP协议的文件传输断点续传Java实现方案

因项目需要,我们服务每天都需要通过SFTP协议来对接上下游进行文件传输,但是对于一些大文件,在与第三方公司的服务器对接过程中很可能会因为网络问题或上下游服务器性能问题导致文件上传或者下载被中断,每次重试都需要重新对文件进行上传和下载,非常浪费带宽、服务器资源和时间,因此我们需要尽量提升文件传输效率,减少不必要的文件传输损耗。

2024-01-23 16:31:03 1458 2

原创 读故事记BEC英语单词(四)

在成功扩大业务并建立强大的市场影响力之后,亚历克斯决定进一步追求增长机会,进入新的国际市场。他进行了全面的市场研究,以确定潜在目标市场并评估扩展计划的可行性。利用他的战略眼光,亚历克斯制定了一项全面的市场进入策略,包括市场细分、竞争分析和定价策略。为了推动国际扩张,亚历克斯与目标市场的当地分销商和供应商建立了战略合作伙伴关系。他进行了有利的分销协议谈判,并建立了牢固的关系,以确保供应链管理的高效和及时交付。

2023-06-25 13:27:49 265

原创 读故事记BEC英语单词(二)

在他的第一个创业项目取得成功之后,Alex受到了追求新机会的动力。他决定多样化自己的业务并扩展到不同的市场。凭借他坚定的创业精神,Alex开始探索潜在的行业,并为他的下一个创业项目进行头脑风暴。利用他从以前成功中获得的经验和知识,Alex仔细评估市场趋势,并确定了一个有前景的行业。他进行了详尽的市场调研,以了解目标受众的需求和偏好。一旦Alex确定了一个潜在的产品,他制定了一份全面的商业计划,概述了他的战略和目标。他分析了竞争对手,制定了定价策略,并预测了财务预测。

2023-06-25 05:32:13 377

原创 读故事记BEC英语单词(三)

在他第一个创业成功后,Alex受到了激励,决定追求新的机会。他决定多样化经营业务并进入不同的市场。凭借他的创业精神,Alex开始探索潜在的行业,并为他的下一个创业项目进行头脑风暴。利用他从以前的成功中获得的经验和知识,Alex仔细评估市场趋势,并确定了一个有前景的行业。他进行了全面的市场调研,以了解目标受众的需求和偏好。一旦Alex确定了一个潜在的产品,他制定了一份全面的商业计划,详细规划了他的战略和目标。他分析了竞争对手,制定了定价策略,并预测了财务预测。

2023-06-25 05:30:34 300

原创 读故事记BEC英语单词(一)

一次在一个小镇上,有一个名叫Alex的年轻企业家。他一直梦想着开创自己的事业并取得成功。有一天,他想出了一个能够彻底改变市场的新产品的绝妙点子。Alex决心要将他的梦想变成现实,于是踏上了实现这个点子的旅程。带着他的商业计划,Alex接触潜在投资者以获得资金支持他的创业项目。他自信而热情地呈现自己的想法,突出产品的独特特点和好处。投资者对Alex的热情和远见印象深刻,并同意支持他的事业。接下来,Alex专注于市场调研和产品开发。他进行调查和访谈,收集潜在客户的宝贵见解。

2023-06-25 05:25:07 338

原创 基于Smb协议实现网络文件传输(Golang)

本文使用到的主要框架版本如下。

2023-06-24 16:33:28 1458

原创 基于Smb协议实现网络文件传输

SMB 是 Server Message Block 的缩写。它是一种网络文件共享协议,允许用户与远程计算机和服务器通信,使他们能够在网络上访问文件、目录、打印机和端口等资源。SMB 在 TCP/IP 协议栈的应用层(第 7 层)上操作,并使用 TCP/IP 的 445 端口。目前我们常见的共享文件方式基本都是支持SMB协议。文件共享:SMB 的主要用途之一是文件共享。SMB 允许多个用户访问和共享存储在远程服务器上的文件,就像它们在自己的本地设备上一样。这使得在网络中的协作和共享资源变得简单。

2023-06-23 19:08:36 2519 2

原创 【k8s系列】一分钟搭建MicroK8s Dashboard

本文基于上一篇文章的内容进行Dashboard搭建,如果没有看过上一篇的同学请先查阅上一篇文章使用MicroK8s搭建Dashboard很简单,只需要在Master节点按照以下几步操作。

2023-06-22 16:38:06 1696

原创 【编码安全】金融Java开发必知网络攻击手段及防范措施

平时做业务开发的同学,可能很少注意到一些网络安全防范,身边大多数同学写代码都是应付任务即可,不会对代码有太多安全考虑,但是往往一些代码的漏洞,就会导致企业损失惨重,甚至程序员也会面临被裁风险。在国外的金融公司或者银行,都会有很多网络安全培训,我们公司也会定期也会需要在内部考证(),确保每个程序员都了解一些常见的攻击手段和防范措施,本文会介绍一些常见的网络攻击手段以及防范措施供大家参考。

2023-06-17 02:30:07 1112

原创 【k8s系列】使用MicroK8s 5分钟搭建k8s集群含踩坑经验

MicroK8s 是一个经过 CNCF 认证的轻量级的 Kubernetes开源部署工具,用于自动化部署、扩展和管理容器化应用程序。它在一个小的占用空间中提供了核心 Kubernetes 组件的功能,使其可以从单个节点扩展到高可用性生产集群。MicroK8s 是一个单一的软件包,使开发人员能够在60秒内获得功能齐全、一致且安全的 Kubernetes 系统。1.查看MicroK8s安装状态2.启动和停止MicroK8s服务3.查看集群节点和服务状态4.修改MicroK8s指令别名5.部署和运行APP。

2023-06-15 20:48:04 2533 1

原创 【外企面试系列】必备口语短语与例句 - BC系列

back and forth 来回地,反复地The children were running back and forth between the playground and the swings. (孩子们在游乐场和秋千之间来回奔跑。)We went back and forth on the decision before finally making up our minds. (我们在这个决定上反复权衡,最终下定决心。)back of 在…后面The parking lot

2023-06-11 15:16:07 1120

原创 【外企面试系列】必备口语短语与例句 - A系列

a big headache令人头痛的事情I have a big headache from all the noise. (我因为噪音而头痛。)The paperwork is a big headache for me. (对我来说,文书工作是件头痛的事情。)a fraction of 一部分She ate only a fraction of her meal. (她只吃了一部分饭菜。)The cost is only a fraction of what it was be

2023-06-11 13:58:51 535

原创 Agile | 聊聊敏捷开发

敏捷开发是一种迭代和增量的项目管理方法,优先考虑适应性、协作和快速交付,而不是遵循严格的计划[0]。它是在《敏捷软件开发宣言》和《12项原则》中表达的一组价值观和原则[1]。敏捷是基于这些价值观和原则的一组框架和实践的总称。敏捷不是一套流程或系统,而是一组原则和价值观。敏捷原则鼓励一种思维方式,帮助项目经理专注于持续学习、变革和协作。

2023-06-07 00:05:00 697

原创 Devops | 浅谈TDD

测试驱动开发(TDD)是一种软件开发方法,强调在编写生产代码之前编写自动化测试。通过首先编写测试,开发人员可以确保他们编写的代码符合预期的要求,并避免引入错误或其他问题。编写测试:首先编写描述要实现的行为的测试。在此阶段,您不应编写任何生产代码。测试应该失败,因为您还没有编写任何实现所需行为的代码。编写生产代码:现在,编写最少量的代码,使测试通过。不要编写不必要的代码,并且不要尝试优化代码。目标是尽快使测试通过。重构:测试通过后,重构代码以使其更清洁和更高效。您还可以添加更多测试以进一步验证代码。

2023-06-06 14:32:57 466

原创 【英语学习】看故事学计算机常用英语(四)

Alex的团队正在开展一个大型项目,建立客户关系管理(CRM)系统。项目非常复杂,需要深入理解各种技术和架构。Alex在微服务和无服务器架构方面的专业知识使他成为团队中最有价值的成员之一。在项目的早期阶段,团队面临了几个挑战,例如管理微服务之间的依赖关系,确保无服务器函数的顺畅运行。Alex的经验在微服务和无服务器架构方面对于克服这些挑战至关重要。CRM系统的一个关键组件是推荐引擎,它将向客户推荐个性化的产品推荐。Alex建议使用机器学习算法和无服务器函数组合来构建推荐引擎。

2023-05-29 21:51:05 231

原创 【英语学习】看故事学计算机常用英语(三)

当Alex继续在Java开发项目中工作的时候,他意识到了保持最新行业趋势和技术的重要性。他开始参加网络研讨会、阅读博客和参与在线论坛,以扩展知识和保持随时都懂。有一天,Alex在阅读关于微服务架构的文章时,发现了这一概念。吸引了他,他决定进一步研究如何在自己的当前项目中实现微服务。Alex发现微服务可以提高应用的可扩展性和可维护性。他决定将现有的单体化架构将解构为较小的、独立的服务。每个服务都负责特定的功能,使得开发、测试和部署变得更容易。

2023-05-29 01:17:59 85

原创 【英语学习】看故事学计算机常用英语(二)

亚历克斯对自己的技能的专注以及他适应新挑战的能力使他成为开发团队中不可或缺的成员。随着项目的推进,亚历克斯期待着新的挑战和机会,以进一步发展他的技能,并在软件开发领域产生影响。亚历克斯对自己的技能的专注以及他适应新挑战的能力使他成为开发团队中不可或缺的成员。随着项目的推进,亚历克斯期待着新的挑战和机会,以进一步发展他的技能,并在软件开发领域产生影响。亚历克斯还添加了处理两个版本请求的代码,确保根据请求的版本返回适当的数据。亚历克斯还添加了处理两个版本请求的代码,确保根据请求的版本返回适当的数据。

2023-05-28 22:55:17 289

原创 【英语学习】看故事学计算机常用英语(一)

有一天,Alex被要求设计一个高性能的Web应用程序,使用Spring Boot和Spring Cloud。Alex开始了一个新的Spring Boot项目,然后配置了应用程序以使用微服务架构,这将提高应用程序的可扩展性和容错性。每天,Alex都会拿着他的咖啡,坐在他的桌子前,准备迎接新的挑战。在晚上,Alex检查了他的代码并进行了优化,以提高可读性和可维护性。他知道,他的努力和知识将为他在软件开发领域带来新的机会。最后的一天来了,Alex离开了办公室,带着满足的感觉,知道他在软件开发领域的贡献不容忽视。

2023-05-28 14:39:19 286

原创 【外企面试】Java技术管理与架构面试参考

2023-05-28 14:25:24 956

原创 【异常处理】解决更新Springboot 3.0后,Swagger-UI 无法正常启动问题

今天尝试将一个项目升级到Spring 3.0,发现Swagger-UI无法打开,显示404 ,尝试更换如下swagger-ui到最新版本,也没有效果,访问页面还是一片空白。

2023-05-27 22:32:44 1398

原创 免费创造你的专属数字人!

现在数字人已经不是什么新鲜事物啦,所谓数字人(Digital Human / Meta Human),是运用数字技术创造出来的、与人类形象接近的数字化人物形象。未来数字人+ChatGPT可以取代很多现在很多的一些应用场景,例如客服、主播等。以下给大家推荐一个免费体验的网站,对于小白用户,只需要简单两步,大家就可以轻松生成自己的数字人!对于高级玩家,还可以通过数字人API整合ChatGPT,放到自己项目用!

2023-05-11 13:28:00 650

原创 利用谷歌云Pub/Sub 实现多任务并行分发处理方案

Pub/Sub 是一种设计为高度可靠且可伸缩的异步消息传递服务。该服务以十多年来许多 Google 产品都在依赖的核心 Google 基础架构组件为基础而构建。其实可以理解成云上的Kafka。

2023-05-07 01:51:27 1220

原创 优化Google Cloud Storage大文件上传和内存溢出

我们的项目每天都会并行上传好几万份文件到下游的,当文件比较大时,会采用GCP的可续上传方案,通过把文件切分成多个数据块,分多次HTTP请求上传到GCP Bucket,具体可参考。但是在实际应用中,会发现文件比较大时,由于数据包会被分成多次HTTP请求上传,偶尔GCP会返回400错误码导致上传失败,但是查看各个请求参数都属于正常,目前不确定GCP一些网络限制导致还是该 API 存在性能问题,于是选择使用另一种替代方案,尝试使用以下方案,通过GCP 官方SDK进行文件上传。参考。

2023-05-05 01:16:29 975

原创 技术管理 | OKR是什么?怎么用?

说到OKR,相信大家并不陌生,很多公司都有用过。很多同学虽然用的是OKR,但实际上还是把它当作KPI来用,也不知道具体含义和作用是什么。OKR不仅可以用于企业管理,我们自己的个人的一些计划和目标也可以用OKR进行拆解。以下是N年前在我们部门分享的OKR资料,今天整理硬盘资料的时候刚好看到,顺便分享。

2023-05-02 15:54:36 71

原创 单元测试系列 | 如何更好地测试依赖外部接口的方法

在现在这个微服务时代,我们项目中经常都会遇到很多业务逻辑是依赖其他服务或者第三方接口。工作中各位同学对于这类型场景的测试方式也是五花八门,有些是直接构建一个外部mock服务,返回一些固定的response;有些是单元测试都不写,直接利用IDE工具,通过debug模式调用依赖服务接口,然后自己在程序运行时插入假的返回数据或者直接粗暴调用依赖服务接口去调试自己逻辑;有些是通过单元测试,使用mockito去屏蔽外部依赖等。刚好最近有位跟我反馈了一个问题,他改完代码就部署到SIT。

2023-04-07 09:00:00 1063

原创 GO | 解决爬虫失败问题

今天写了一段Go代码尝试去测试爬取某Top250电影榜,发现一直爬取不到数据。一开始以为是代码有问题,然后加了一行代码,通过控制台打印Response信息发现响应体并没有返回想要的网页数据。添加了一段代码打印请求返回结果,收到如下返回信息。

2023-03-30 17:11:23 648

原创 本地调试Java程序时只对部分接口忽略代理

今天有位朋友问了个问题,在本地IDE开发工具调试代码的时候,怎么不动代码的情况只针对部分API走proxy,因为他们的代码只需要在本地调试的时候才要用到Proxy,而平时都是部署在云上,是用不到Proxy的,所以他们老大不让他们代码里出现任何用到代理的代码入侵逻辑,只能通过外置配置代理。当Service A 调用时才需要走代理,而调用时自动绕过代理。

2023-03-22 00:26:00 248

原创 如何在Linux监控每个进程对应的线程数

现在的 CPU 基本都是由多个核心组成,加上我们现在的微服务,更加充分利用多核处理器的强大功能,我们的微服务都会开启多线程进行各种任务处理,这也导致我们遇到问题的时候很难定位。例如我们线上排查问题,可能需要有关,但如果没有一些强大的APM工具,我发现身边很多同事其实还不知道如何进行线程监控。在本文中,我们将向您介绍可用于检查和监控线程计数数据的所有工具和命令。

2023-03-21 01:02:23 1876

原创 图书速读 | 一分钟读完《学会如何学习》

芭芭拉·奥克利(Barbara Oakley)密歇根州罗切斯特市奥克兰大学的工程学教授,麦克马斯特大学全球数字学习拉蒙-卡哈尔杰出学者。本科专业(居然是?)俄语。从小学到高中数理成绩一路垫底,因此热爱文学。为了应付职场生活,不得不学习大量新鲜知识,甚至是让人头疼的数学知识。放下工作,回到学校,竟然学成了工程学博士,后留校任教授。在MOOC平台Coursera上开创广受欢迎的学习课“Learning How to Learn”,帮助数百万学生和成年人学会如何学习。

2023-03-19 10:44:04 247

原创 图书速读 | 一分钟读完过目不完读书法

这本书有点标题党,很明显我是被标题吸引到才买的,讲到读书方法的内容很少。我是不太建议大家买实体书,书中有用的内容不多,想了解的可以直接到网上搜电子书,该书的精华几乎都可以从目录大纲直接获得。

2023-03-19 10:23:12 65

专业程序员技术模板,供大家参考

如何写一份好的技术简历,让用人单位更好发掘你的亮点!

2023-05-11

空空如也

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

TA关注的人

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