Java
Prisma - 入门
Prisma是一个开源的数据库工具链项目,支持PostgreSQL、MySQL、MongoDB、SQL Server和SQLite。下面我会使用Mysql + Typescript来作为演示。 安装Prisma 首选你需要有一个Node环境。然后新建一个文件夹,初始化Node项目。 初始化Prisma prisma会创建.env(环境变量)和prisma/schema.prisma(Prism
http协议与apache
http协议与apache 1、httpd协议 两台主机通信需要socket文件 yum insatll -y nc [root@localhost ~]#nc -l 8000 #主机1 在监听 8000 端口 [root@node2 ~]#nc 192.168.91.100 8000 #主机2 去访问
如何使用Redis实现分布式锁?
首先来说 Redis 作为一个独立的三方系统,其天生的优势就是可以作为一个分布式系统来使用,因此使用 Redis 实现的锁都是分布式锁,理解了这个概念才能看懂本文所说的内容。 分布式锁的示意图,如下所示: 分布式锁实现 使用 Redis 实现分布式锁,可以通过 setnx(set if not exists)命令实现,当我们使用 setnx 创建键值成功时,则表明加锁成功,否则既代码加锁失败。因
Alibaba微服务组件Nacos注册中心
1. 什么是 Nacos官方:一个更易于构建云原生应用的动态服务发现(Nacos Discovery )、服务配置(Nacos Config)和服务管理平台。集 注册中心+配置中心+服务管理 平台Nacos 的关键特性包括: 服务发现和服务健康监测 动态配置服务 动态 DNS 服务 服务及其元数据管理
Alibaba微服务组件Nacos配置中心
1. Nacos配置中心使用官方文档: https://github.com/alibaba/springcloudalibaba/wiki/NacosconfigNacos 提供用于存储配置和其他元数据的 key/value 存储,为分布式系统中的外部化配置提供服务器端和客户端支持。使用 Spring Cloud Alibaba Nacos Config,您可以在 Nacos Server 集中
iOS开发Swift-基础部分
1.常量 2.变量 3.类型注解 系统可通过赋初始值进行自动推断。 4.输出 5.注释 6.分号 平时可加可不加,同一行中有两句话必须加。 7.整数 Int UI
[Leetcode Weekly Contest]359
链接:LeetCode [Leetcode]2828. 判别首字母缩略词 给你一个字符串数组 words 和一个字符串 s ,请你判断 s 是不是 words 的 首字母缩略词 。 如果可以按顺序串联 words 中每个字符串的第一个字符形成字符串 s ,则认为 s 是 words 的首字母缩略词。例如,"ab" 可以由 ["apple", "banana"] 形成,但是无法从 ["bear",
Java学习IO流Day01
io 一、File 2.1 FIle概述 File用来表示文件系统中的一个文件或者目录 java.io包下 2.2 方法 构造方法 File(String pathname) : 通过指定路径名称创建一个新的FIle实例 File(File parent, String child) :根据父级目录对象和子文件名称获取FIle对象 File(String parent,
老师 help me T^T
编码问题(且vs编码高级保存设置UTF-8无用) 问题1.0 建图时,从文件读入的数据是乱码(使用string保存)。 解决办法 vs改了没有用,去修改了数据文件的保存编码,顺应vs改成国标了。(治标不治本?) 问题2.0 智能问答时,从控制台读入一串汉字,遍历时1个汉字被拆成2个字符遍历,并且控制台输出无法显示,显示为空(因为要和 “的” 这个字进行分割匹配,使用wstring保存控制台
Nacos源码 (4) 配置中心
本文阅读nacos-2.0.2的config源码,编写示例,分析推送配置、监听配置的原理。 客户端 创建NacosConfigService对象 构造方法: 创建ConfigFilterChainManager - 过滤器链 创建ServerListManager - 服务器列表管理 创建ClientWorker - 用来发送请求,内部封装了一个ConfigRpcTransportClien
java 批量插入数据
转:https://blog.csdn.net/qq_35461948/article/details/130195282 批量插入数据,常见的使用mybatis foreach 插入的方式,原始的方式和批处理 1,常见的mybatis foreach xml mapper: int insertBatch(@Param("records") List<CodeInfo>
搭建SpringCloudAlibaba工程_基于SpringBoot3.+
打开IDEA新建工程 删除所有文件,仅保留pom.xml,并做出如下修改,可直接复制粘贴,切记调整你为自己项目的groupId和artifactId <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=
JIT jvm编译优化
http://ifeve.com/hotspot-jit/ https://www.infoq.cn/article/OpenJDK-HotSpot-What-the-JIT https://www.baeldung.com/graal-java-jit-compiler https://developers.redhat.com/articles/2021/06/23/how-jit-compi
classloader与自定义类加载器
arthas/agent/src/main/java/com/taobao/arthas/agent/ArthasClassloader.java at master · alibaba/arthas JVM自定义类加载器在代码扩展性的实践 | HeapDump性能社区 大量类加载器创建导致诡异FullGC | HeapDump性能社区 Java系列 | 远程热部署在美团的落地实践 - 美团技术团
jvm 指令与指令执行
运行时内存结构 在了解jvm指令之前,需要先了解java虚拟机运行时内存的结构,根据jvm规范(java se8),运行时数据区给每个线程分配了不同的区域,比如PC寄存器、JVM栈,本地方法栈,线程共有的部分有堆与方法区。 栈上每个函数调用都有一个帧作为对应数据结构,每个帧都包括局部变量表与操作数栈,这部分在编译的时候就可以确定了,局部变量表用来保存方法中的局部变量,以及方法参数。当一个方法刚开始
使用JProfiler分析程序性能问题
JProfiler是一个分析运行时JVM的专业工具,根据官网的介绍,应用主要有以下几个功能: 方法调用:通常被称为"CPU分析"。方法调用可以通过不同的方式进行测量和可视化, 分析方法调用可以帮助了解你的应用程序正在做什么,并找到提高其性能的方法。 分配:分析堆上对象的分配、引用链和垃圾回收属于"内存分析"的范畴。 这个功能可以让你解决内存泄漏,总之使用更少的内存,分配更少的临时对象。
设计模式和七大原则概述及单一职责原则详解
设计模式的目的 编写软件过程中,程序员面临着来自,耦合性,内聚性以及可维护性,扩展性,重用性等方面的挑战。设计模式是为了让程序,具有更好的 1.代码重用性(相同代码,不用重复编写) 2.可读性(编程规范性,便于其他程序员的阅读和理解) 3.可扩展性(当需要增加新的功能时,非常的方便) 4.可靠性(当我们增加新的功能后,对原有的功能没有影响) 5.使程序呈现高内聚,低耦合的特性 设计模式(desi
Mybatis的执行流程
MyBatis是一个开源的持久层框架,它简化了数据库操作的编写和管理。下面是MyBatis的执行流程概述: 1. 配置:首先,你需要配置MyBatis的相关配置文件,如 `mybatis-config.xml` 和映射文件(Mapper XML)。配置文件包含了数据库连接信息、插件配置、类型别名等。 mybatis-config.xml 2. 创建SqlSessionFactory:通过读取
VUE3单页面应用开发常用工具
Vite 一种新型的前端构建工具,它主要由两个部分做成 一个开发服务器,它基于 原生 ES 模块 提供了 丰富的内建功能,如速度快到惊人的 模块热更新(HMR)。 一套构建指令,它使用 Rollup 打包你的代码,并且它是预配置的,可输出用于生产环境的高度优化过的静态资源。 社区模板 create-vite
Jersey框架相关
介绍 Jersey是一个REST框架,类似 SpringMVC,必须运行在Servlet容器中,如Tomcat或Jetty。 使用 在SpringBoot内嵌Tomcat容器中使用 注意要使用JDK1.8,不能使用JDK11,使用jersey的高版本的话,jar包版本冲突,暂时没找到解决方案。 配置SpringBoot启动类 配置ServletContainer,这是一个Servlet,类
Future和CompletableFuture区别
Future :获取异步返回的结果需要使用轮询的方式,消耗cup CompletableFuture:采用观察者模式,阻塞获取异步返回的结果,性能得到优化 CompletableFuture的使用明细 官方文档:https://nightlies.apache.org/flink/flink-docs-release-1.14/docs/dev/datastream/operat
本地nacos启动报错: Please set the JAVA_HOME variable in your environment, We need java(x64)! jdk8 or later is better!
编辑startup.cmd文件 将模式从cluster改为standalone 插入一行指定你的JAVA_HOME路径set JAVA_HOME="C:dev_filesjdk17" 如果启动时仍然报错: 查看代码 Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error crea
阿里相关组件-阿里Cola状态机相关
使用 原理 核心类 StateMachine 状态机 S:state 我们自己项目中的状态类 E:Event 我们自己的事件类 C:Context 我们自己的上下文 State 状态 EventTransitions 关于Transition的一个包装 Transition 流转 内部:统一状态 外部:不同状态 参考 COLA下的cola-statemachine