自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Martin的专栏

一名苦逼程序猿的经验分享

  • 博客(13)
  • 资源 (2)
  • 问答 (2)
  • 收藏
  • 关注

原创 Docker构建多平台镜像

方法一使用起来比较方便,也是个人比较推荐的,可以配置在稳定的测试/生产环境使用。方法二使用起来稍微会麻烦一点,但是会比较灵活,比较适合一些定制化/开发场景。两种方法都可以完成创建多平台镜像的工作,具体使用就看个人根据实际情况选择。

2024-06-06 11:50:26 857

原创 Serverless部署应用并使用Cloudflare加速和支持HTTPS

完成上面的步骤以后,你就得到了一个可以通过后台提供服务的云函数了,像我这个微信机器人项目就是一个纯后台项目,所以是可以直接使用云函数提供的域名配置到微信公众号后台使用的。但是如果部署的是一个前台服务,那就必须要配置一个自定义的域名才能正常使用,下面就分别介绍一下自定义域名的两种情况。

2024-06-06 11:47:59 984

原创 MacOS 安装k8s

复制上一步返回的token信息,浏览器访问如下地址,填入token即可登录。为兼容上面安装的kubelet的版本,具体可查看。开启代理并且设置代理端口为8001。应用推荐配置,这里需要注意修改。完成以后可以验证一下部署状态。确保本地已经安装并启动好了。设置页的配置,点击右下角的。按钮,等待k8s完成部署。复制如下配置,保存文件为。复制如下配置,保存文件为。打开新的命令窗口,执行。获取token不带参数。克隆git仓库到本地。等待所有镜像拉取完成。检查用户信息是否存在。获取token带参数。

2024-06-06 11:47:06 467

原创 记一次堆外内存泄漏排查过程

虽然经过这么多的努力,最终只是证明了【没有需求就没有BUG】这句话,但是中间还是有挺多的收获的,很多命令也是第一次使用,中间还有一些曲折,就没有一一写出来了,挑选了一些比较有价值的过程写了这篇文章总结,希望可以分享给有需要的人,以后遇到类似问题,可以做个经验参考。

2024-06-06 11:45:35 1239

原创 Docker学习笔记

近些年,如果你是一名开发,那么Docker这个热门的技术名词你一定听说过,我也不例外,但是因为平时没接触过,所以一直都没动力去了解使用。最近在折腾自己维护在github上的项目的时候,发现项目所依赖的外部环境比较多,比如zookeeper、redis、elasticsearch等等,如果都安装一遍的话比较麻烦,而且因为是自己整理平时积累用的项目,对数据也没什么要求,只要有这样一个环境能保证项目运行起来就行了。

2024-06-06 11:44:00 923

原创 Java8 Stream完全使用指南

Stream是Java 1.8版本开始提供的一个接口,主要提供对数据集合使用流的方式进行操作,流中的元素不可变且只会被消费一次,所有方法都设计成支持链式调用。使用Stream API可以极大生产力,写出高效率、干净、简洁的代码。

2024-06-06 11:42:21 623

原创 记一次锁使用不当导致Dubbo线程阻塞问题

简单来说,这是一次使用锁不恰当而导致的连锁反应,,因为其中一个线程异常退出没有解锁,导致其他进来的线程一旦进入到这个方法就会被阻塞,dubbo的线程数是有限的(默认200),当所有线程都被阻塞的时候,dubbo就完全不能提供服务了。吸取一下经验解锁代码要放在finally块中,保证即使线程异常,也能正常解锁。如果需要加锁执行的代码,最好能做成异步执行,这样即使阻塞也只是阻塞异步线程池,不会影响主工作线程的正常执行。

2024-06-06 11:39:38 319

原创 在Ubuntu上使用Jetty部署War包

如果只有一个应用想要把根路径绑定到该应用,则可在webapps目录下添加应用同名的xml,如当前有project.war,则可新增project.xml文件,内容为。找到jetty.http.host和jetty.http.port,去掉前面的#号,如有需要可修改绑定端口。有些版本不支持这种方式下载,所以只能手动下载后再上传到服务器。有一台装有Ubuntu系统的服务器和一个可以部署的War包。当然也可以使用如下指令将本地文件复制到服务器临时目录。是上一步解压后的文件夹名,根据实际版本做替换。

2024-06-06 11:35:40 372

原创 使用Java结合Redis的bitmap结构实现布隆过滤器

最近在研究布隆过滤器(如果不了解什么是布隆过滤器的,推荐看这篇了解),发现Guava提供了封装好的类,但是只能单机使用,一般现在的应用都是部署在分布式系统的,所以想找个可以在分布式系统下使用的布隆过滤器,找了半天只找到一个基于redis开发的模块项目,但是这个是需要额外安装的,而且文档里只说了怎么在docker下运行,没研究过docker所以放弃了。

2024-06-06 11:28:55 324

原创 MySQL分页查询offset过大,Sql优化经验

当offset特别大时,这条语句的执行效率会明显减低,而且效率是随着offset的增大而降低的。原因为:MySQL并不是跳过offset行,而是取offset+N行,然后返回放弃前offset行,返回N行,当offset特别大,然后单条数据也很大的时候,每次查询需要获取的数据就越多,自然就会很慢。

2024-06-06 11:28:09 473

原创 Nginx正向代理和反向代理配置

Nginx的反向代理功能应该是Nginx诸多功能里面最常用的一个功能了,正向代理的话可能使用的场景比较少,平时接触的也不多,本章内容仅包含这两个功能的基本使用配置,因为是本地版本的,所以不包含负载均衡相关的内容。

2024-06-06 11:27:21 362

原创 使用cronolog切割nginx访问日志,定时清理旧日志

使用cronolog切割nginx访问日志,定时清理旧日志

2024-06-06 11:18:59 459

翻译 [译]Jetty 9 使用 jetty.sh 启动 Unix 服务

(这是我们的经验,在长时间运行的Jetty服务器上,标准临时目录通常由各种清理脚本管理):在过去的Jetty版本中,你得在Jetty发布目录下操作修改或添加,虽然这依然支持,但是我们鼓励你设置一个合适的。推荐创建一个指定的用户用于运行Jetty,该用户应该拥有运行Jetty的最小设置权限。这看起来都很好,但是你使用的是root角色运行的默认配置的Jetty服务。修改Jetty发布的权限,设置你创建的用户可以访问你的web应用文件夹。的Jetty发布版本,需要启动服务才能让它长时间的成为服务级文件。

2024-06-06 11:14:55 39

HttpUrlConnectionUtil---模拟提交表单工具类

使用HttpUrlConnection实现模拟提交表单的一个简单工具类,支持文件和普通参数

2015-05-28

集成jetty的j2ee项目demo

一个简单的集成了jetty的j2ee项目,jetty版本为8.1.16

2015-05-17

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

TA关注的人

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