1简介 为了更好的版本控制和问题定位,我们需要知道正在运行的应用是什么版本,什么时候打包的,Git的相关信息等。通过/actuator/info可以帮助我们获取这些信息。 2配置 首先要有actuator的依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> 然后打开对应的端口: management: endpoint...

  zH5uKVzZkNnY   2023年11月01日   59   0   0 Java

1简介 谷歌云GCP(GoogleCloudPlatform)是由Google提供的云平台,还是为用户提供了许多免费的产品,还是可以尝试一下的。对于学习或者小项目,都可以使用。 2创建一个新项目 要使用GCP,我们需要创建一个项目,它所有的资源都是在项目之下管理的: 3创建ServiceAccount 在实际开发中,我们不能使用自己的账号在做操作,最好的方式是创建一个服务账号(ServiceAccount),这应该也是所有云平台都推荐的方式。创建位置如下: 输入账号名字: 选择角色,为了方便,我直接选择Owner,会拥有所有权限,但实际应用肯定不能这样,要做好隔离: 4创建密钥文件 对...

  zH5uKVzZkNnY   2023年11月01日   45   0   0 Java

1简介 Terraform是管理许多平台的基础设施的工具,如AWS、GCP和Azure。这篇文章将讲解如何通过Terraform来管理GCPPub/Sub。 创建GCP项目请参考:初始化一个GCP项目并用gcloud访问操作 2Terraform创建Pub/Sub 2.1下载Terraform插件 我们需要安装GCP的Terraform插件来管理GCP资源: 设置插件目录 $exportTERRAFORM_PLUGIN=/Users/larry/Software/terraform/plugins 创建目录 $mkdir-p${TERRAFORM_PLUGIN}/registry.terraf...

  zH5uKVzZkNnY   2023年11月01日   59   0   0 Java

管理Terraform状态文件的最佳方式是通过云端的统一的存储,如谷歌云就用GCS。 首先要创建一个Bucket: $gsutilmb-ppkslow-lus-west1-bongs://pkslow-terraform Creatinggs://pkslow-terraform/... $gsutillsgs:// gs://pkslow-terraform/ 然后在Terraform文件中配置对应的信息: terraform{ backend"gcs"{ bucket="pkslow-terraform" prefix="state/gcp/pubsub" } } 初始化后,就会在B...

  zH5uKVzZkNnY   2023年11月01日   79   0   0 Java

1简介 如果要选择GCP为云平台,则经常需要创建GCE(GoogleComputeEngine),有以下几种方式: (1)在浏览器创建 (2)命令gcloud (3)Terraform 在开始之前,可以查看:《初始化一个GCP项目并用gcloud访问操作》。 2GCPConsole 登陆操作界面,点击创建按钮,然后选择好参数即可: 会显示出对应的价格。 3gcloud命令 在操作界面创建时,可以直接查看对应的gcould命令: 我们直接运行就可以创建了: $gcloudcomputeinstancescreatepkslow-vm\ --project=pkslow\ --zone=us-...

  zH5uKVzZkNnY   2023年11月01日   94   0   0 Java

1简介 CloudSQL是GCP上的关系型数据库,常用的有三种方式来创建: (1)界面操作 (2)命令行gcloud (3)Terraform 在开始之前,可以查看:《初始化一个GCP项目并用gcloud访问操作》。 2GCP操作界面 登陆GCP,选择SQL,可以创建MySQL、PostgreSQL和SQLServer: 以PostgreSQL为例,可以选择很多参数: 3gcloud命令 通过命令行创建也很方便,可以自动化。命令如下: $gcloudsqlinstancescreatepkslow-testdb\ --database-version=POSTGRES_13\ --regi...

  zH5uKVzZkNnY   2023年11月01日   97   0   0 Java

1什么是Terraform? Terraform是一个IaC工具,IaC全称为InfrastructureasCode,基础设施即代码。它的理念是通过代码来管理基础设施,如服务器、数据库等,更多请看《Terraform入门教程,示例展示管理Docker和Kubernetes资源》。 而作为IaC的事实标准,了解并学习Terraform还是很有必要的。工作中也用到了Terraform,所以我就去考了TerraformAssociate这个证书。 2关于TerraformAssociate HashiCorp提供的考试只有三种:TerraformAssociate、VaultAssociate和...

  zH5uKVzZkNnY   2023年11月01日   99   0   0 Java

简介 NetflixEureka是微服务系统中最常用的服务发现组件之一,非常简单易用。当客户端注册到Eureka后,客户端可以知道彼此的hostname和端口等,这样就可以建立连接,不需要配置。 Eureka服务端 添加Maven依赖: <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency> 添加注解...

  zH5uKVzZkNnY   2023年11月01日   43   0   0 Java

服务器信息 在阿里云买了个抢占式的服务器,地区为华南广州,系统为Ubuntu20.04,8核16GB。 安装Docker 命令如下: $apt-getupdate-y $apt-getupgrade-y $apt-getinstall-ydocker.io 安装成功后,检查一下版本: $dockerversion Client: Version:20.10.7 APIversion:1.41 Goversion:go1.13.8 Gitcommit:20.10.7-0ubuntu520.04.2 Built:MonNov100:34:172021 OS/Arch:linux/amd64 C...

  zH5uKVzZkNnY   2023年11月01日   72   0   0 Java

1简介 DB2是IBM的一款优秀的关系型数据库,简单学习一下。 2Docker安装DB2 为了快速启动,直接使用Docker来安装DB2。先下载镜像如下: dockerpullibmcom/db2:11.5.0.0 启动数据库如下: dockerrun-itd\ --namemydb2\ --privileged=true\ -p50000:50000\ -eLICENSE=accept\ -eDB2INST1_PASSWORD=pkslow\ -eDBNAME=testdb\ ibmcom/db2:11.5.0.0 这样获得的数据库,具体信息如下: 连接URL:jdbc:db...

  zH5uKVzZkNnY   2023年11月01日   61   0   0 Java

1简介 Solace是一个强大的实时性的事件驱动消息队列。本文将介绍如何在Spring中使用,虽然代码使用的是SpringBoot,但并没有使用相关starter,跟Spring的整合一样,可通用。JMS是通过的消息处理框架,可以深入学习一下,不同的MQ在JMS的整合上都是类似的。 2通过Docker启动Solace 有两种方式试用Solace,一种是通过Docker来启动,另一种是使用Cloud版本,但Cloud版本有试用期限,我们使用Docker来启动吧。 先下载镜像: $dockerpullsolace/solace-pubsub-standard:9.13.0.16 然后通过以下命令...

  zH5uKVzZkNnY   2023年11月01日   31   0   0 Java

开发者账号 首先需要注册一个开发者账号,不然什么都免谈。在手机AppleDeveloper上注册给钱就行了,个人开发者一年688元。 打包App App开发好后,就可以通过XCode打包。打包前选好版本号,不要跟以前提交的一样,重复的Version和Build是无法提交的。当然第一次打包就不可能会重复了。 在菜单栏选择Product,然后选Archive进行打包: 打包完成,会弹出以下对话框,就可以把应用上传到AppStoreConnect了。 上面这个对话框可以按下面的方式打开: 上传 打包完后,点击DistributeApp进行上传: 大概两三分钟,就上传完成了: ...

  zH5uKVzZkNnY   2023年11月01日   42   0   0 Java

简介 GraalVM是高性能的JDK,支持Java/Python/JavaScript等语言。它可以让Java变成二进制文件来执行,让程序在任何地方运行更快。这或许是Java与Go的一场战争? 下载安装GraalVM 安装GraalVM 首先到官网下载,我是直接到GitHubReleasePage下载的,请下载对应的系统包,我下载如下: graalvm-ce-java11-darwin-amd64-22.3.0.tar.gz 下载后解压到某个目录,我的如下: /Users/larry/Software/graalvm-ce-java11-22.3.0 接着测试对应的程序是否可以正常执行,如j...

  zH5uKVzZkNnY   2023年11月01日   51   0   0 Java

简介 Quarkus是类似于SpringBoot的框架,可以方便大家进行Java开发。利用GraalVM的魔力,能更好的适应云原生的场景,极快的启动速度。 创建项目 在IDEA就直接有创建Quarkus项目的初始化工具,直接根据自己需要填好即可,非常方便: 选择自己需要的一些组件和依赖,我这里只选择WebReactive。这跟SpringBoot挺像的。 生成的Java代码就一个文件,很简单小巧: 编译运行 创建成功后,把编译目标改为11,因为我用的是JDK11。通过mvncleanpackage尝试打包,下载依赖包。编译成功后,IDEA支持直接跑Quarkus程序,如下: 启动成功如...

  zH5uKVzZkNnY   2023年11月01日   43   0   0 Java

简介 在文章《GraalVM和SpringNative尝鲜,一步步让Springboot启动飞起来,66ms完成启动》中,我们介绍了如何使用SpringNative和buildtools插件,打包出本地镜像,也打包成Docker镜像。本文探索一下,如果不通过这个插件来生成镜像。这样我们可以控制更多、了解更多。 创建SpringBoot项目 创建SpringBoot项目,引入SpringNative,我们主要使用的是SpringNative提供的AOT功能。如下: <dependencies> <dependency> <groupId>org.springf...

  zH5uKVzZkNnY   2023年11月01日   54   0   0 Java

简介 在文章《ApacheBeam入门及JavaSDK开发初体验》中大概讲了ApapcheBeam的简单概念和本地运行,本文将讲解如何把代码运行在GCPCloudDataflow上。 本地运行 通过maven命令来创建项目: mvnarchetype:generate\ -DarchetypeGroupId=org.apache.beam\ -DarchetypeArtifactId=beam-sdks-java-maven-archetypes-examples\ -DarchetypeVersion=2.37.0\ -DgroupId=org.example\ -DartifactId=w...

  zH5uKVzZkNnY   2023年11月01日   48   0   0 Java

1简介 Dapr是一个可移植的、事件驱动的运行时,它使任何开发人员能够轻松构建出弹性的、无状态和有状态的应用程序,并可运行在云平台或边缘计算中,它同时也支持多种编程语言和开发框架。Dapr支持的语言很多,包括C/Go/Java/JavaScript/Python/Rust/.NET/PHP等。 目前,可用的构建块如下: 构建块 说明 服务调用 跨服务调用允许进行远程方法调用(包括重试),不管处于任何位置,只需该服务托管于受支持的环境即可。 状态管理 独立的状态管理,使用键/值对作为存储机制,可以轻松的使长时运行、高可用的有状态服务和无状态服务共同运行在您的应用程序中。状态存...

  zH5uKVzZkNnY   2023年11月01日   50   0   0 Java

1简介 之前在文章《dapr入门与本地托管模式尝试》中介绍了dapr和本地托管,本文我们来介绍如果在代码中使用dapr的服务调用功能,并把它整合到SpringBoot中。 Dapr服务调用的逻辑如下: 本次实验会创建两个服务: pkslow-data,提供数据服务,用于返回数据; pkslow-hello,提供查询服务,外界调用,它会调用pkslow-data的接口获取数据,而pkslow-data处理完,也会调用pkslow-hello的接口反馈结果。 2创建SpringBoot项目 2.1引入相关依赖 先创建常规的SpringBoot项目,引入Web的同时,也引入dapr的SDK: &l...

  zH5uKVzZkNnY   2023年11月01日   43   0   0 Java

1简介 我们之前使用了dapr的本地托管模式,但在生产中我们一般使用Kubernetes托管,本文介绍如何在GKE(GCPKubernetes)安装dapr。 相关文章: dapr本地托管的服务调用体验与JavaSDK的SpringBoot整合 dapr入门与本地托管模式尝试 2安装GKE 我们直接在网页上安装GKE,我们安装的是Autopilot模式的GKE,如下: 点击创建,等一段时间后就会创建成功了。 检查GKE状态 需要安装以下gcloud插件: $gcloudcomponentsinstallgke-gcloud-auth-plugin 获取权限让kubectl可以访问: $...

  zH5uKVzZkNnY   2023年11月01日   87   0   0 Java

1简介 我们进行WebAPI开发的时候,经常会使用Json格式的消息体,而Json格式非常灵活,不同的人会有不同的设计风格和实现,而JSONAPI提供了一套标准。但它并不提供直接实现。 Katharsis是JSONAPI的Java实现,使用它可以快速开发出Jsonbased的Web接口,还能快速的整合到Spring中。今天我们就来试试如何在SpringBoot中使用Katharsis。 2整合过程 2.1添加依赖 我们在SpringBoot中添加依赖如下,包括常规的starter、jpa和h2,而整合Katharsis只需要katharsis-spring即可。 <dependenci...

  zH5uKVzZkNnY   2023年11月01日   35   0   0 Java
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~