-
docker-java Docker的java API
所属栏目:[Java] 日期:2020-12-15 热度:175
docker-java docker-java 是 Docker的 Java 版本API Docker 当前的实现基于 Jersey 2.x 因此 classpath 不兼容老版本的 Jersey 1.x ! 开发者论坛 docker-java Changelog Wiki 版本支持 Supports a subset of the Docker Remote API v1.37,Docker Server vers[详细]
-
Docker+Jenkins持续集成环境(1)使用Docker搭建Jenkins+Docker
所属栏目:[Java] 日期:2020-12-15 热度:164
本文介绍如何通过Jenkins的docker镜像从零开始构建一个基于docker镜像的持续集成环境,包含自动化构建、发布到仓库并部署上线。 0. 前置条件 服务器安装docker,并启动docker swarm 注意docker启动时,需要开启tcp端口 1.Jenkins 安装 1.1 命令行启动: 安[详细]
-
VS Code Remote,在服务器上开发程序,开启全新开发模式
所属栏目:[Java] 日期:2020-12-15 热度:181
一直使用Idea开发java 程序,头疼的是太太太占用内存了,笔记本电脑经常卡爆,在服务器开发的话又太麻烦,VS Code Remote的带来,解决了这一烦恼。下面来实战一下。 VS Code Remote 2019 年 5 月 3 日,在 PyCon 2019 大会上,微软发布了 VS Code Remote,开[详细]
-
XNginx - nginx 集群可视化管理工具
所属栏目:[Java] 日期:2020-12-15 热度:137
之前团队的nginx管理,都是运维同学每次去修改配置文件,然后重启,非常不方便,一直想找一个可以方便管理nginx集群的工具,翻遍web,未寻到可用之物,于是自己设计开发了一个。 效果预览 集群group管理界面 可以管理group的节点,配置文件,修改后可以一键[详细]
-
Docker+Jenkins持续集成环境(5): android构建与apk发布
所属栏目:[Java] 日期:2020-12-15 热度:145
项目组除了常规的java项目,还有不少android项目,如何使用jenkins来实现自动构建呢?本文会介绍安卓项目通过jenkins构建的方法,并设计开发一个类似蒲公英的app托管平台。 android 构建 安装android sdk: 先下载sdk tools 然后使用sdkmanager安装: ./sdkm[详细]
-
spring security实现动态配置url权限的两种方法
所属栏目:[Java] 日期:2020-12-15 热度:178
缘起 标准的RABC,权限需要支持动态配置,spring security默认是在代码里约定好权限,真实的业务场景通常需要可以支持动态配置角色访问权限,即在运行时去配置url对应的访问角色。 基于spring security,如何实现这个需求呢? 最简单的方法就是自定义一个Filt[详细]
-
mongodb海量数据CRUD优化
所属栏目:[Java] 日期:2020-12-15 热度:101
1. 批量保存优化 避免一条一条查询,采用 bulkWrite ,基于 ReplaceOneModel ,启用 upsert : public void batchSave(List? spoTriples,KgInstance kgInstance) { MongoConverter converter = mongoTemplate.getConverter(); ListReplaceOneModelDocument bul[详细]
-
开源APM系统skywalking介绍与使用
所属栏目:[Java] 日期:2020-12-15 热度:200
介绍 SkyWalking 创建与2015年,提供分布式追踪功能。从5.x开始,项目进化为一个完成功能的Application Performance Management系统。 他被用于追踪、监控和诊断分布式系统,特别是使用微服务架构,云原生或容积技术。提供以下主要功能: 分布式追踪和上下文[详细]
-
Docker+Jenkins持续集成环境(3)集成PMD、FindBugs、Checkstyle
所属栏目:[Java] 日期:2020-12-15 热度:111
为了规范代码,我们一般会集成静态代码检测工具,比如PMD、FindBugs、Checkstyle,那么Jenkins如何集成这些检查工具,并把检查结果放到构建邮件里呢? 今天做了调研和实现,过程如下 首先看,最终效果: 1.pom.xml build。plugins 增加: pluginartifactIdma[详细]
-
Docker启用TLS进行安全配置
所属栏目:[Java] 日期:2020-12-15 热度:82
之前开启了docker的2375 Remote API,接到公司安全部门的要求,需要启用授权,翻了下官方文档 Protect the Docker daemon socket 启用TLS 在docker服务器,生成CA私有和公共密钥 $ openssl genrsa -aes256 -out ca-key.pem 4096Generating RSA private key,4[详细]
-
Docker swarm 获取service的container信息
所属栏目:[Java] 日期:2020-12-15 热度:176
我们可以通过 docker service create 创建服务,例如: docker service create --name mysql mysql:latest 服务创建好后,如何来获取该service包含的容器信息呢?比如获取刚才创建的mysql服务的容器。我们可以通过docker service ps命令来获取, 命令行方式[详细]
-
通过 Drone Rest API 获取构建记录日志
所属栏目:[Java] 日期:2020-12-15 热度:141
Drone是一款CICD工具,提供rest API,简单介绍下如何使用API 获取构建日志。 获取token 登录进入drone,点头像,在菜单里选择token 复制token即可 API 介绍 Drone的api分为几大类 Builds 构建 Cron 定时任务 Repos 仓库 Secrets User 用户 Users 调用举例:[详细]
-
知识图谱推理与实践(3) -- jena自定义builtin
所属栏目:[Java] 日期:2020-12-15 热度:195
在第2篇里,介绍了 jena 的 The general purpose rule engine (通用规则引擎)及其使用,本篇继续探究,如何自定义builtin。 builtin介绍 先回顾builtin为何物,官方叫 Builtin primitives ,可以理解为内置函数、内置指令,可以返回true或者false用来检验ru[详细]
-
来,我们一起打造一款代码命名工具
所属栏目:[Java] 日期:2020-12-15 热度:138
你是否还在为代码命名而纠结不已? here are only two hard things in Computer Science: cache invalidation and naming things.-- Phil Karlton 那么如何更好的命名呢? 是否有好的工具可以支持我们命名呢?网上搜索一圈没有发现满意的,于是自己动手丰衣[详细]
-
spring boot实现超轻量级网关(反向代理、转发)
所属栏目:[Java] 日期:2020-12-15 热度:117
在我们的rest服务中,需要暴露一个中间件的接口给用户,但是需要经过rest服务的认证,这是典型的网关使用场景。可以引入网关组件来搞定,但是引入zuul等中间件会增加系统复杂性,这里实现一个超轻量级的网关,只实现请求转发,认证等由rest服务的spring secu[详细]
-
XNginx升级记录
所属栏目:[Java] 日期:2020-12-15 热度:146
之前的博文提到过,XNginx - nginx 集群可视化管理工具,开发完成后一直稳定运行,直到前面因为一个站点的proxy站点配置问题,导致需要修改nginx 配置文件模板,因此借此机会对系统做了升级。 前端升级到最新版的ng-alain 事实证明,升级是痛苦的,前端项目真[详细]
-
阿里开源JDK dragonwell8在容器环境使用
所属栏目:[Java] 日期:2020-12-15 热度:73
Alibaba Dragonwell 是阿里巴巴的Open JDK 发行版,提供长期支持。 阿里宣传称在阿里生产环境实现了应用。Alibaba Dragonwell兼容 Java SE 标准,因此可以方便切换。 下载 可以到https://github.com/alibaba/dragonwell8/releases?spm=5176.cndragonwell.0.0[详细]
-
K8S基于ingress-nginx实现灰度发布
所属栏目:[Java] 日期:2020-12-15 热度:195
之前介绍过使用ambassador实现灰度发布,今天介绍如何使用ingre-nginx实现。 介绍 Ingress-Nginx 是一个K8S ingress工具,支持配置 Ingress Annotations 来实现不同场景下的灰度发布和测试。 Nginx Annotations?支持以下 4 种 Canary 规则: nginx.ingress.k[详细]
-
给Swagger换一套皮肤 Knife4j集成记录
所属栏目:[Java] 日期:2020-12-15 热度:163
Swagger有一套经典的UI,但是并不是很好用,之前有看到Knife4j,界面美观、功能完善,因此尝试集成。 demo参考示例地址:knife4j-spring-boot-demo Knife4j前身是swagger-bootstrap-ui,是一个为Swagger接口文档赋能的工具 根据官方文档,集成非常方便。 mave[详细]
-
使用科大讯飞TTS自定义彩虹屁语音包
所属栏目:[Java] 日期:2020-12-15 热度:184
rainbow-fart-tts 彩虹屁插件红了后,你是否想生成定义语音包呢?本文给出一个解决方案,使用科大讯飞的TTS生成彩虹屁语音包,你可以完全自定义文本,自定义发音人哦! 开源地址: https://github.com/jadepeng/rainbow-fart-tts 修改文本 打开 manifest.jso[详细]
-
idea彩虹屁挑战赛开始啦,快来自定义你的彩虹屁
所属栏目:[Java] 日期:2020-12-15 热度:56
一个在你编程时疯狂称赞你的 IDEA扩展插件,支持自定义关键词和文本,兼容VSCode版本语音包 | An IDEA extension that keeps giving you compliment while you are coding,it will checks… https://github.com/jadepeng/idea-rainbow-fart 安装方法 到releas[详细]
-
容器环境的JVM内存设置最佳实践
所属栏目:[Java] 日期:2020-12-15 热度:167
Docker和K8S的兴起,很多服务已经运行在容器环境,对于java程序,JVM设置是一个重要的环节。这里总结下我们项目里的最佳实践。 Java Heap基础知识 默认情况下,jvm自动分配的heap大小取决于机器配置,比如我们到一台64G内存服务器: java -XX:+PrintFlagsFin[详细]
-
深入探索Spring Data JPA, 从Repository 到 Specifications 和
所属栏目:[Java] 日期:2020-12-15 热度:115
数据访问层,所谓的CRUD是后端程序员的必修课程,Spring Data JPA 可以让我们来简化CRUD过程,本文由简入深,从JPA的基本用法,到各种高级用法。 Repository Spring Data JPA 可以用来简化data access的实现,借助JPA我们可以快速的实现一些简单的查询,分页[详细]
-
Spring Boot引入swagger-ui 后swagger-ui.html无法访问404
所属栏目:[Java] 日期:2020-12-15 热度:132
最近给graphserver增加swagger,记录下过程与问题解决。 Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务,后端集成下Swagger,然后就可以提供一个在线文档地址给前端同学。 引入 Swagger pom中加入相关配置: depen[详细]
-
IDEA版本彩虹屁插件idea-rainbow-fart,一个在你编程时疯狂称赞
所属栏目:[Java] 日期:2020-12-15 热度:135
缘起 是否听说过程序员鼓励师,不久前出了一款vscode的插件rainbow-fart,可以在写代码的时候,匹配到特定关键词就疯狂的拍你马屁。 vscode的下载尝试过,但是作为日常将IDEA作为主力生产工具的同学来说,如何体验呢? 于是假期花了一点时间,写了一个idea版[详细]