- 博客(133)
- 收藏
- 关注
原创 FFMPEG+mp3+mp4转换
一、安装mp3插件和mp4插件,无优先顺序。lame--libmp3lame的安装包,支持MP3编码;yasm--NASM的重写,用于编译ffmpeg1、安装mp3插件lame:LAME (Lame Aint an MP3 Encoder) - Browse /lame at SourceForge.nettar -zxf lame-3.100.tar.gzcd lame-3.100./configuremakemake installyasm:http://www.linuxfr
2022-01-14 23:25:41
829
原创 Dubbo + Sleuth + Zipkin 链路追踪
一、简介1、默认情况下,Spring Cloud Sleuth支持服务之间http请求的traceId的传递。如最为常见的Feign和RestTemplate等。不支持服务在dubbo调用之间传递,所以我们要扩展dubbo的Filter。2、使用brave-instrumentation-dubbo-rpc组件来扩展dubbo的Fiter。二、Zipkin安装1、下载:zipkin-server-2.12.9-exec.jar2、启动:start.sh,访问地址:http://local
2021-10-26 00:17:57
859
原创 Sentinel @SentinelResource注解非接口方法限流和降级
一、Controller@RestController@RequestMapping("/test/")public class TestController { @Autowired private TestService testService; @RequestMapping("test") public String test() { String str = testService.findByName("test");
2021-09-05 00:10:12
510
原创 Sentinel 使用Nacos存储规则
一、pom<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId></dependency><dependency> <groupId>com.alibaba.csp</groupId> <
2021-09-01 23:42:25
671
原创 Sentinel 限流
一、安装客户端:1.6.0版本1、下载地址 sentinel-dashboard-1.6.0.jar2、 启动java -Dserver.port=8888 -Dsentinel.dashboard.auth.username=sentinel -Dsentinel.dashboard.auth.password=123456 -Dserver.servlet.session.timeout=7200 -jar sentinel-dashboard-1.6.0.jar-Dsentinel.
2021-08-31 23:35:04
278
原创 Nacos 多环境配置
目录结构一、pom中添加包<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0..
2021-08-22 22:44:34
1358
原创 Docker - Kubernetes
一、安装docker:二、安装docker私服# 拉取镜像docker pull registry# 运行registrydocker run -d -p 5000:5000 -v /Users/chenfenli/Bin/kubernetes/docker-registry:/var/lib/registry registry# 查看容器MacBook-Air:kubernetes chenfenli$ docker psCONTAINER ID IMAG...
2021-07-12 23:39:17
507
2
原创 Kubernetes-4: 共享持久化存储 PV、PVC
一、PV1、编写yml:k8s_nfs_pv_data.ymlapiVersion: v1kind: PersistentVolumemetadata: name: pv0001 labels: type: nfs001spec: capacity: storage: 128Mi accessModes: - ReadWriteMany persistentVolumeReclaimPolicy: Recycle nfs: path:
2021-07-05 23:18:20
188
原创 Kubernetes-3: 负载均衡 SVC
1、查看selector的app为:nginx1MacBook-Air:test chenfenli$ kubectl get deployment -o wideNAME READY UP-TO-DATE AVAILABLE AGE CONTAINERS IMAGES SELECTORnginx-dm-1 3/3 3 3 6h8m nginx test/nginx:v2
2021-07-04 21:03:11
217
原创 Kubernetes-2: 滚动升级及回滚 Deployment
一、滚动更新1、编写yml:k8s_nginx_deployment_1.ymlapiVersion: apps/v1kind: Deploymentmetadata: name: nginx-dm-1spec: replicas: 3 selector: matchLabels: app: nginx1 template: metadata: labels: app: nginx1 spec: c.
2021-07-04 15:11:29
196
原创 Kubernetes-1: 手动创建pod
一、手动创建pod1、docker 搜索nginx、拉取nginx镜像、制作tag// 搜索镜像docker search nginx// 拉取镜像docker pull nginx// 用nginx(4f380adfc10f)镜像制作tagdocker docker tag 4f380adfc10f test/nginx:v12、编写ymlapiVersion: v1kind: Podmetadata: name: nginx labels: name:
2021-07-04 13:26:22
198
原创 SpringCloud Alibaba + Dubbo 常见设置
一、自定义异常:dubbo在抛出非Exception异常时会进行一次封装,所在在跨服务调用时,账户服务如果抛出自定义异常,订单服务无法直接获取到账户服务抛出的自定义异常信息。所以可以在被调用服务的接口声明自定义异常,dubbo则不会对异常进行封装如:public interface AccountService { public void insert(Account account) throws APIException; /** * 扣减余额 * @par
2021-03-19 10:04:39
303
原创 SpringCloud Alibaba + Dubbo + Nacos + Seata - 案例代码
一、pom1、父工程pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.
2021-03-15 00:21:47
171
原创 SpringCloud Alibaba + Dubbo + Nacos + Seata - 环境部署
一、版本SpringBoot(2.1.6.RELEASE),SpringCloud(Greenwich.SR2),SpringCloudAlibaba(2.1.3.RELEASE),Nacos(1.2.1),Seata(1.2.0)二、环境搭建1、nacos安装下载解压安装:https://github.com/alibaba/nacos/releases运行:./bin/startup.sh -m standalone &访问:http://localhost:8848/n
2021-03-15 00:05:47
485
原创 elasticsearch 结合 mybatis 动态拼接dsl
一、简单结构,没有业务层二、pom<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://
2020-12-05 10:23:20
1129
1
原创 mongodb查询导出
一、准备导出文件: mongo_export.jsvar c = db.user_map.find({},{"name":1}).limit(100000)while(c.hasNext()) { printjsononeline(c.next());}二、执行导出/opt/mongodb-linux-x86_64-3.2.10/bin/mongo 127.0.0.1:31000/user_data ./mongo_export.js >> ./user.tx
2020-11-27 16:11:41
280
原创 Spark-SparkStreaming+Kafka+Redis 手动管理offsets
SparkStreamingTestimport org.apache.kafka.common.TopicPartitionimport org.apache.spark.sql.SparkSessionimport org.apache.spark.streaming.{Durations, StreamingContext}import scala.collection.mutableimport com.jzh.util.RedisUtilimport org.apache.kafk
2020-08-24 00:30:24
316
原创 Spark On HBase
POM<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <spark.
2020-08-23 16:31:22
300
原创 Spark 批量写入 HBase
import com.alibaba.fastjson.JSONObjectimport org.apache.hadoop.conf.Configurationimport org.apache.hadoop.hbase.client.{Put, Result}import org.apache.hadoop.hbase.io.ImmutableBytesWritableimport org.apache.hadoop.hbase.util.Bytesimport org.apache.had.
2020-08-23 11:32:17
810
原创 Hadoop-mongodb 使用
一、概述使用hadoop-mongodb进行hdfs和mongodb之间的数据转换存储<dependency> <groupId>org.mongodb.mongo-hadoop</groupId> <artifactId>mongo-hadoop-core</artifactId> <version...
2020-01-06 11:35:30
437
原创 常用Shell
一、拷贝文件到其它机器,自动输入密码(需安装expect模块)1、scp_hosts.sh#!/bin/bashscpTo() { ./scp_hosts.exp $1}scpTo 192.168.30.164scpTo 192.168.30.165scpTo 192.168.30.1662、scp_hosts.exp#!/usr/bin/expe...
2019-12-31 10:15:25
174
原创 模拟生成手机号
public static void main(String[] args) { for(int j = 0; j <= 99999999; j++) { String phone = getHourFreq(j+""); if(j % 10000 == 0) { System.out.println(186+phone); } }}public stati...
2019-12-24 11:33:29
1228
原创 MapReduce自定义Partitioner、排序、GroupingComparator实现 同一订单中金额最大的商品
一、概述自定义Bean、Partitioner、排序、GroupingComparator实现 同一订单中金额最大的商品,减少数据流。 自定义Bean:将订单id和商品金额作为bean的属性,并将bean作为key,利用Partitioner、排序、GroupingComparator。 自定义Partitioner:将同一订单号的数据划分到同一分区,因为分区采用的是对reduce个数的取...
2019-12-17 16:59:14
287
原创 查找共同好友
一、概述查找共同好友如:A有好友B,C,D,E,O B有好友A,C,E,K C有好友F,A,D,I ......A:B,C,D,E,OB:A,C,E,KC:F,A,D,ID:A,E,F,LE:B,C,D,M,LF:A,B,C,D,E,O,MG:A,C,D,E,OI:A,OJ:B,OK:A,C,DL:D,E,FM:E,F,GO:A,H,I,J思路:1...
2019-12-14 21:51:17
496
原创 Java 删除注释和空行
一、样例文件public class DeleteNoteTestFile { /** * 测试1 */ public void test() { //测试0 // 测试1 int i = 0; // 证的 String provinceId = "1156220000"; // 跑数据的省 String url = "http:/...
2019-11-22 10:25:30
659
原创 程序执行流程(一):提交Job到Yarn集群或本地过程
1、获取配置文件,并创建job,提交到集群如:Configuration conf = getConf();conf.set("fs.defaultFS", "hdfs://192.168.30.150:8020");String jobName = getClass().getSimpleName();Job job = Job.getInstance(conf, jobName...
2019-11-03 21:41:25
515
原创 高并发编程:17、读写模式读写分离锁
一、概述当一个值在多线程下,既有读操作又有些操作,我们可以在读和写的时候添加锁,来保证线程安全, 但有很多种情况是,读多写少,这种时候再读的时候也加上锁,读的操作也串行化了,严重影响程序性能。 所以有了读、写分离锁,多个线程同时读,没有写的时候的时候并行化,其它情况串行化。 读 写 读 并行 串行 写 串行 串行二、代码1、自定义读写锁 /*...
2019-09-29 10:03:50
266
原创 K条单向链表合并
一、概述K条有序链表合并,按顺序合并链表如: 链表A:1-3-5 链表B:2-4 链表C:3-6-7 链表D:7-8-9 链表E:10-11 合并结果:1-2-3-4-5-6-7-8-9二、代码构建A、B、C、D、E 5条链表。 public static void main(String[] args) { // 构造链表A Lin...
2019-09-25 23:44:32
297
原创 高并发编程:16、观察者模式监控线程状态
一、概述观察者模式监控线程状态二、代码Clientpublic class Client { public static void main(String[] args) { ThreadLifeCycleObserver observer = new ThreadLifeCycleObserver(); observer.query(Arrays.asList("线程1...
2019-09-18 17:20:57
269
原创 高并发编程:15、缓存一致性,volatile关键字(二)
一、概述能保证修饰变量的可见性、有序性,但不能保证原子性。二、分析1、不能保证原子性public class Thread17 { private static volatile Integer INIT_VALUE = 0; private static Integer MAX_LIMIT = 500; public static void main(String[]...
2019-09-16 10:51:02
175
原创 高并发编程:15、缓存一致性,volatile关键字(一)
一、概述cpu缓存一致性。 java线程缓存一致性。 volatile关键字:可见性。二、缓存一致性1、先看一段代码public class Thread17 { private static Integer INIT_VALUE = 0; private static Integer MAX_LIMIT = 50000; public static void ma...
2019-09-15 23:33:11
232
原创 单向链表合并
一、概述合并两个单向有序链表如: 链表A:1-3-5 链表B:2-4 合并结果:1-2-3-4-5 什么是单向链表:https://blog.youkuaiyun.com/oJueQiang123456/article/details/86384046二、代码public class Link { public static void main(String[] args) { //...
2019-09-12 16:23:20
358
原创 高并发编程:14、线程的waitSet
public class Thread16 { private static final Object LOCK = new Object(); public static void main(String[] args) { for(int i = 0; i < 10; i++) { new Thread("thread"+i) { @Override ...
2019-09-08 22:19:36
207
原创 原 高并发编程:13、多线程下的单例模式
一、概述多线程下的单例模式。 推荐使用第6或第7种模式。二、代码1、饿汉模式public class SingletonObject1 { private static final SingletonObject1 singletonObject1 = new SingletonObject1(); private SingletonObject1() { } ...
2019-09-08 21:52:37
170
原创 高并发编程:12、简易版线程池
一、概述支持最小线程数,预估线程数,最大线程数 支持最大任务数量 支持关闭线程池二、代码public class Thread15 { public static void main(String[] args) { SimpleThreadPool threadPool = new SimpleThreadPool(); for(int i = 0; i < 16...
2019-08-27 11:51:36
157
原创 CHD+CM-2 常见问题
1、spark和hbase交互找不到org.apache.htrace包:Caused by: java.lang.ClassNotFoundException: org.apache.htrace.Tracejava.lang.reflect.InvocationTargetExceptionCaused by: java.lang.NoClassDefFoundError: org/...
2019-08-20 18:41:18
721
原创 高并发编程:11、程序添加钩子、捕捉线程中抛出的异常、打印调用关系
一、概述添加钩子addShutdownHook: 程序结束时会执行钩子程序里面的代码,命中行中kill程序也会执行,但kill -9 钩子程序不会执行 捕捉线程中抛出的异常 打印调用关系二、代码public class Thread14 { public static void main(String[] args) { // 钩子程序 Runtime.getRuntim...
2019-08-17 19:26:10
196
原创 高并发编程:10、自定义锁,实现synchronized的设置超时
一、概述当有10个线程在调用一个被synchronized的方法时,只有当前拿到锁的线程执行完之后,其它9个线程才能有一个线程抢到锁。反复如此,如果方法固定调用时长为10秒,执行完成之后就是100秒。 所以当我们调用这个方法的时候想要设置一个超时时间,超过之间就放弃调用。二、代码public class Thread13 { public static void main(St...
2019-08-14 15:38:01
3258
原创 高并发编程:9、wait、notify、notifyAll(三 完整的消费者、生产者)
一、概述上一篇文章介绍到多个生产者和多个消费者时,会使生产者和消费者都处于wait等待状态,处于假死状态。 所以用notifyAll替换notify,唤醒所有处于等待中的线程。二、代码public class Thread12 { private Integer index = 0; private volatile boolean isProducer = fa...
2019-08-01 23:14:02
154
原创 高并发编程:9、wait、notify、notifyAll(二 程序假死的原因分析)
一、概述多个生产者和多个消费者同时存在时导致出现程序假死的原因分析。二、代码public class Thread11 { private Integer index = 0; private volatile boolean isProducer = false; private Object LOCK = new Object(); public...
2019-07-25 23:03:51
412
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人