自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

宋发元

我喜欢,驾驭着代码在风驰电掣中创造完美!我喜欢,操纵着代码在随心所欲中体验生活!我喜欢,书写着代码在时代浪潮中完成经典!每一段新的代码在我手中诞生对我来说就象观看刹那花开的感动!

  • 博客(262)
  • 资源 (8)
  • 收藏
  • 关注

原创 go-zero入门学习教程(看了就会)

这算是比较完整的入门教程,跟着教程,照葫芦画瓢,多练习几次,自然就记住了。教程源码分支:6.zero整合Excelize操作Excel。教程源码分支:5.zero整合单机ClickHouse。教程源码分支:4.zero整合asynq定时任务。教程源码分支:2.zero整合单机Redis。教程源码分支:3.zero整合单机kafka。新手的话,你得把这个刷完了再继续刷其他的。教程源码分支:1.zero入门。

2024-06-12 10:24:53 340

原创 杭州租房群|出租|转租|求租|找室友

2023-07-21 11:09:58 93

原创 谷歌浏览器油猴插件(Tampermonkey)安装使用教程

Tampermonkey 是一款免费的浏览器扩展和最为流行的用户脚本管理器,它适用于 Chrome, Microsoft Edge, Safari, Opera Next, 和 Firefox。虽然有些受支持的浏览器拥有原生的用户脚本支持,但 Tampermonkey 将在您的用户脚本管理方面提供更多的便利。 它提供了诸如便捷脚本安装、自动更新检查、标签中的脚本运行状况速览、内置的编辑器等众多功能, 同时Tampermonkey还有可能正常运行原本并不兼容的脚本。安装谷歌浏览器如何安装谷歌浏览器,就不

2021-01-27 21:20:51 134390 23

原创 RabbitMQ延迟队列实现定时任务

SpringBoot和SpringCloud框架通用。使用场景订单在N分钟内未支付自动取消订单。指定时间发送运营短信。用户注册后,N天内未进行下一步操作进行短信操作。用户发起退款,N时间后通知相关人员处理。预订会议,会议前N分钟提醒。利用RabbitMQ实现延时队列本方法是在消息属性里面设置TTL(Time To Live),这种方式有缺点,消息可能并不会按时被消费,因为RabbitMQ只会检查第一个消息是否过期,如果过期才会丢到死信队列,所以如果第一个消息的延时时间很长,而第二个.

2020-11-25 10:22:52 1706 4

原创 FeignClient服务调用案例

FeignClient服务调用案例,由A服务调用B服务,分别展示了get和post调用的各种传参方式。A服务A服务FeignClient调用服务类FeignDemoServicepackage com.github.third.feign;import com.github.common.util.Response;import com.github.third.feign.fal...

2019-08-06 01:13:06 3133

原创 Redis防止用户并发执行某一操作

背景在实际的开发过程中,会遇到某些接口因处理过慢或者用户重复点击操作,导致相同的操作执行多遍的情况,那么如何有效的防止同一用户同一时刻执行多次相同的操作,就是本文的重点啦!处理方法废话不多说,此处采用Redis Incr实现。Redis incr 可以实现原子性的递增,可应用于高并发的秒杀活动、分布式序列号生成等场景。这里我使用它来计数实现过滤用户请求,同一时刻只允许同一用户执行一次操作...

2019-08-06 00:50:12 846

原创 Linux搭建pinpoint教程(集群版本)

Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控、方法执行详情查看、应用状态信息监控等功能。基于GoogleDapper论文进行的实现,与另一款开源的全链路分析工具Zipkin类似,但相比Zipkin提供了无侵入式、代码维度的监控等更多的特性。 Pinpoint支持的功能比较丰富,可以支持如下几种功能:服务拓扑图:对整个系统中应用的调用关系进行了可视化的展示,单击某个服务节点,可以显示该节点的详细信息,比如当前节点状态、请求数量等实时活跃线程图:监控应用内活跃线程的执行情况,对应用的线

2019-07-18 22:38:52 1687 2

原创 Linux搭建pinpoint教程(史上最全版)

Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控、方法执行详情查看、应用状态信息监控等功能。基于GoogleDapper论文进行的实现,与另一款开源的全链路分析工具Zipkin类似,但相比Zipkin提供了无侵入式、代码维度的监控等更多的特性。 Pinpoint支持的功能比较丰富,可以支持如下几种功能:服务拓扑图:对整个系统中应用的调用关系进行了可视化的展示,单击某个服务节点,可以显示该节点的详细信息,比如当前节点状态、请求数量等实时活跃线程图:监控应用内活跃线程的执行情况,对应用的线

2019-05-21 21:34:06 3255 1

原创 mysql连表更新(用一个表的数据更新另一个表的数据)

用一个表中的字段去更新另外一个表中的字段,来看一个简单的例子就会了:create table student( student_id int not null ,student_name varchar(30) not null ,city_code varchar(10) null ,city_name varchar(5...

2018-04-23 00:20:41 18437 12

原创 Nginx+keepalived双机热备(双主模式)

Nginx+keepalived双机热备(双主模式)此前已经写过一篇使用keepalived实现nginx的高可用,这种方式有一台机器一直作backup使用,有50%的资源被浪费。 Nginx+keepalived双机热备(主从模式) keepalived安装请查看 Nginx+keepalived双机热备(主从模式)下面来配置nginx+keepalived的双主机双机热备,这种配置下有

2017-12-26 19:55:03 1616

原创 Nginx+keepalived双机热备(主从模式)

首先确认系统已经安装好Nginx并能正常访问。nginx搭建请查看http://blog.csdn.net/u011019141/article/details/78716078需要高可用的nginx对应的设备均需要安装keepalived服务,安装步骤一样。本文安装目录为: /opt/keepalivedKeepalived安装进入keepalived待安装目录c

2017-12-25 18:48:54 985

原创 零基础构建Spring Boot项目

Spring Boot Demo简介:Springboot modules基础项目搭建maven构建项目1、访问http://start.spring.io/2、选择构建工具Maven Project、Spring Boot版本1.3.6以及一些工程基本信息,点击“Switch to the full version.”java版本选择1.8,可参考下图所示: 3、点击Generate Proje

2017-12-12 21:02:46 913 2

原创 MySQL查询本周、上周、本月、上个月份数据的sql代码

查询当前这周的数据 SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now()); 查询上周的数据 SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format

2016-09-10 13:08:02 1748

原创 零基础在Linux服务器上部署javaweb项目

一.安装JDK1、首先要查看服务器的系统版本,是32位还是64位#getconf LONG_BIT642、下载64位版本的jdk下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html版本:jdk-8u91-linux-x64.rpm3、使用ftp工

2016-04-29 12:02:45 30625

原创 【MySQL】mysql中模糊查询的四种用法

下面介绍mysql中模糊查询的四种用法:1,%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。比如 SELECT * FROM [user] WHERE u_name LIKE '%三%'将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“三”的记录全找出来。另外,如果需要找出u_name中既有“三”又

2015-11-06 21:52:04 1016

原创 LEFT JOIN RIGHT JOIN INNER JOIN JOIN如何理解这几个JOIN?

INNER JOIN: 只返回匹配的记录。LEFT JOIN: 返回左表中的所有记录,以及匹配的右表记录,若无匹配则返回NULL。RIGHT JOIN: 返回右表中的所有记录,以及匹配的左表记录,若无匹配则返回NULL。JOIN: 等同于INNER JOIN。

2024-07-22 10:38:40 189

原创 context.Context从主函数传递给异步函数出现context canceled是为啥?

通常情况下,如果在主函数中创建的被取消,那么传递给异步函数的上下文也会随之取消。这是因为在 Go 语言中,是一种用来控制和取消操作的机制,它是按照调用链传递的。具体来说,当你在主函数中创建一个,然后将它传递给一个异步函数时,如果主函数执行完毕(例如返回或者退出),那么创建的这个上下文可能会被取消。这意味着异步函数可能会收到一个取消信号,从而停止执行或者进行相应的清理工作。

2024-07-11 14:57:54 229

原创 context.Background()怎么理解,有什么用?

理解的用法和意义可以通过一个具体的示例来说明。在Go语言中,context包用于管理请求的范围、取消信号、截止时间等,特别适合在并发程序中控制goroutine的行为。

2024-07-11 14:48:27 278

原创 MySQL数据库字符集utf8mb4的排序规则介绍

在MySQL数据库中,字符集(charset)和排序规则(collation)是处理文本数据的重要概念。字符集决定了数据库如何存储字符数据,而排序规则决定了如何比较和排序字符数据。

2024-07-10 14:22:38 372

原创 MySQL数据库字段的字符集和排序规则如何理解?

理解字符集和排序规则在MySQL中的应用对于处理多语言文本和特定比较需求非常重要。通过合理选择字符集和排序规则,可以确保数据的正确存储和比较。

2024-07-10 14:14:28 218

原创 定金和订金是啥意思?有啥区别?

在签订合同或进行交易时,明确区分定金和订金的意义很重要。定金提供了更强的法律保障和约束力,而订金则更为灵活。选择哪种方式取决于交易的具体需求和对违约风险的考量。

2024-07-03 10:53:54 136

原创 CPU密集型和IO密集型如何理解?如何区分?

CPU密集型任务:主要消耗CPU资源,设置线程数接近或等于CPU核心数。IO密集型任务:主要消耗IO资源,设置线程数为CPU核心数的几倍,以隐藏IO等待时间。通过合理配置线程池,可以有效提高不同类型任务的执行效率,充分利用系统资源。

2024-06-25 14:52:25 289

原创 ThreadPoolExecutor自定义线程池,其参数和服务器配置有无关系?应该如何设置?

在设置时,应该根据具体的服务器配置、应用程序的性能需求和负载特性来进行调整和优化。合理配置线程池参数可以有效地提升应用程序的并发处理能力和性能表现。

2024-06-25 14:42:54 411

原创 Java中线程池的创建方式有几种?

Executors类:提供了方便的静态工厂方法来创建常见类型的线程池。: 固定大小线程池。: 可缓存的线程池。: 单线程池。: 定时线程池。类:提供了高度可配置的线程池实现,可以精细控制线程池的行为。类:用于并行处理大量小任务,特别是递归任务。根据应用程序的需求选择合适的线程池实现,可以显著提高性能并简化多线程编程。

2024-06-25 14:20:43 897

原创 FutureTask如何使用?

FutureTask结合了Runnable和Future的功能,非常适合表示可取消的异步计算。可以使用Callable或Runnable对象创建FutureTask,并提交给执行。FutureTask提供了取消任务、检查任务是否完成等功能,使其在并发编程中非常有用。

2024-06-25 14:11:11 482

原创 Java中Callable的应用

Callable接口在需要任务返回结果或抛出异常时非常有用。通过的submit方法可以执行单个Callable任务,通过invokeAll方法可以并行执行多个Callable任务。Future对象用于表示任务的结果,并可以阻塞等待任务完成。这些特性使得Callable在Java并发编程中非常强大和灵活,适用于各种需要并发执行的计算和处理任务的场景。

2024-06-25 14:03:22 374

原创 Java8引入的新特性有哪些?如何使用?

让我来详细列举 Java 8 引入的主要特性,并分别说明它们的概念、使用场景和示例。

2024-06-20 16:14:11 703

原创 Java匿名类

匿名类是一种简化代码实现的方式,特别适用于一次性使用的类。通过匿名类,可以快速实现接口或扩展类,而不需要定义额外的类文件。在合适的场景下使用匿名类可以使代码更加简洁和高效,但应注意避免过度使用以免影响代码的可读性。

2024-06-20 14:53:03 351

原创 Java内部类

成员内部类:定义在另一个类内,可以访问外部类的所有成员。局部内部类:定义在方法或作用域内,只能在该方法内使用。匿名内部类:没有名字的类,通常用于实现接口或抽象类的实例。静态内部类:使用static修饰的内部类,不能直接访问外部类的非静态成员。每种内部类都有其适用的场景和优点,根据具体需求选择合适的内部类类型可以提高代码的可读性和组织性。

2024-06-20 14:33:53 319

原创 如何理解shell命令 cd $(dirname $0)

理解命令$0$0dirname $0dirnamedirname $0$(...)cd。

2024-06-19 15:33:36 263

原创 go-zero整合Excelize并实现Excel导入导出

本教程基于,项目工程结构同上一个教程。本教程主要实现go-zero框架整合Excelize,并暴露接口实现Excel模板下载、Excel导入、Excel导出。(教程源码分支:6.zero整合Excelize操作Excel)

2024-06-11 17:37:07 898

原创 23 种设计模式详解(全23种)

设计模式是一种解决特定问题的通用解决方案,主要用于软件开发中。常见的设计模式分为三大类:创建型模式、结构型模式和行为型模式。每类设计模式解决不同类型的问题。以下是每种类别中的常见设计模式:单例模式(Singleton Pattern):工厂方法模式(Factory Method Pattern):抽象工厂模式(Abstract Factory Pattern):建造者模式(Builder Pattern):原型模式(Prototype Pattern):适配器模式(Adapter Pattern):装饰者模

2024-06-03 15:19:44 877

原创 Mac电脑重置网络命令

这些命令提供了几种不同的方法来重置Mac上的网络设置。具体使用哪种方法取决于你的具体需求,例如是否仅刷新DNS缓存,重置网络接口,还是完全重置Wi-Fi设置。根据你的情况选择合适的命令,并在执行前确保保存所有必要的网络配置。

2024-06-03 14:56:27 1284 1

原创 go-zero整合单机版ClickHouse并实现增删改查

本教程基于,项目工程结构同上一个教程。本教程主要实现go-zero框架整合单机版ClickHouse,并暴露接口实现对ClickHouse数据的增删改查。(教程源码分支:5.zero整合单机ClickHouse)

2024-05-29 11:38:53 907

原创 go get和go get -u

在 Go(Golang)编程中,go get和go get -u是用于管理依赖项和模块的命令。go getgo getgo.modgo.modgo.modgo.sum这个命令会下载并安装以及它的所有依赖项。go get -u-ugo get -ugo.modgo.sum这个命令会更新及其所有依赖项到最新的兼容版本。

2024-05-14 16:34:08 517

原创 go-zero整合asynq实现分布式定时任务

本教程基于go-zero微服务入门教程,项目工程结构同上一个教程。本教程主要实现go-zero整合asynq实现分布式定时任务。(教程源码分支:4.zero整合asynq定时任务)

2024-05-11 17:31:53 362

原创 go-zero整合Kafka实现消息生产和消费

本教程基于,项目工程结构同上一个教程。本教程主要实现go-zero框架整合单机版Kafka,并暴露接口实现Kafka消息的生产和消费。(教程源码分支:3.zero整合单机kafka)

2024-04-24 13:54:03 1237

原创 Docker中Kafka容器创建/更新Topic支持多分区

检测Kafka运行正常后,如果Topic为http_capture的主题存在,则更新分区为5个,若不存在Topic,则新建。自行通过docker部署好kafka,并启动相关容器。假设Topic为http_capture。

2024-04-18 17:14:06 683 2

原创 Go操作Kafka之kafka-go

Kafka是一种高吞吐量的分布式发布订阅消息系统,本文介绍了如何使用kafka-go这个库实现Go语言与kafka的交互。Go社区中目前有三个比较常用的kafka客户端库 , 它们各有特点。首先是IBM/sarama(这个库已经由Shopify转给了IBM),之前我写过一篇使用sarama操作Kafka的教程,相较于sarama, kafka-go 更简单、更易用。segmentio/kafka-go 是纯Go实现,提供了与kafka交互的低级别和高级别两套API,同时也支持Context。

2024-04-08 13:57:30 2341

原创 go-zero整合单机版Redis并实现增删改查

本教程基于,项目工程结构同上一个教程。本教程主要实现go-zero框架整合单机版Redis,并暴露接口实现对Redis数据的增删改查。

2024-04-01 15:34:49 991

go-zero入门教程搭配源码

go-zero入门教程搭配源码

2024-02-22

app-subway-data数据库脚本文件

app_subway_data数据库脚本文件

2023-05-17

Typora免费版,Mac,Windows,Linux适用

Typora免费版,Mac,Windows,Linux适用

2022-05-27

tampermonkey-backup-chrome-2021-11-27T13-18-01-624Z.zip

下载后通过Tampermonkey直接导入即可使用。

2021-11-27

解压后拖入浏览器扩展程序使用.zip

解压后拖入浏览器扩展程序使用

2021-11-27

tampermonkey-backup-chrome-2021-01-27T09-36-27-548Z.zip

Tampermonkey脚本文件

2021-01-27

GetterSetterUtil_Eclipse3.5

eclipse生成get和set中文注释的工具类,下载替换eclipse原工具类即可。

2018-05-08

JavaWeb企业人力资源管理系源码分享

JavaWeb企业人力资源管理系源码分享

2015-01-03

36种漂亮的CSS3网页按钮Button样式

36种漂亮的CSS3网页按钮Button样式

2015-01-03

apache-tomcat-6.0.20-src.zip

apache-tomcat-6.0.20-src.zip

2014-12-18

空空如也

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

TA关注的人

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