- 博客(116)
- 资源 (13)
- 收藏
- 关注
原创 Fabric建链docker-compose方式(客户端与节点主机分离+Fabric CA server容器化)
前文都已换用docker容器启动各个节点,而却仍是二进制的方式启动,这会造成环境依赖的问题(如GLIBC库版本依赖),所以这里将fabric-ca-server也使用docker-compose启动,同样也是保证客户端和节点主机不在一个机器。假设客户端主机在192.168.2.195,在节点主机192.168.3.128部署1个orderer节点和1个peer节点,将fabric-ca-server也部署在192.168.2.195。
2023-12-12 22:30:59 1065 2
原创 Fabric建链docker-compose方式(客户端与节点主机分离)
前文启动节点都是在主机本地,这里将换用docker容器启动各个节点,同样也是保证客户端和节点主机不在一个机器。假设客户端主机在192.168.2.195,在节点主机192.168.3.128部署1个orderer节点和1个peer节点。最终一样保证链码的正常安装和调用。
2023-11-01 22:22:18 461
原创 Fabric二进制建链(客户端与节点主机分离)
前文的二进制建链、添加对等节点或排序节点,都是客户端和节点服务端在一台机器。这里将尝试将客户端和节点主机分为各自的主机,假设客户端主机在192.168.2.195,在对等和排序节点主机192.168.3.128部署1个orderer节点和1个peer节点。
2023-11-01 21:54:37 394
原创 Fabric二进制添加排序节点
书接上回,在fabric二进制建链或fabric二进制添加对等节点的基础上,继续通过二进制命令行的方式,添加一个新的排序节点orderer1。最终通过请求新的排序节点orderer1完成链码的操作。
2023-11-01 21:24:13 266
原创 Fabric二进制添加对等节点
书接上回,在fabric二进制建链的基础上,继续通过二进制命令行的方式,添加一个新的对等节点peer1。并最终能通过新的对等节点peer1实现链码的安装和调用。
2023-11-01 21:13:58 356
原创 Fabric二进制建链
基于Fabric v2.2.0,参考测试网络(docker)的搭建,使用最原生(二进制)的方式搭建fabric,要求1个排序节点orderer0,1个对等节点peer0,且都在org1下;同时要求使用Fabric CA服务替代生产网络不推荐的cryptogen的方式。最终能完成链码部署和正常交易。
2023-10-24 21:52:02 567
原创 长安链、趣链和百度超级链BaaS服务平台对比
长安链ChainMaker、趣链HyperChain和百度超级链XuperChain服务平台BaaS功能对比。
2023-09-10 10:14:43 417
原创 趣链BaaS服务平台调研
趣链hyperchain服务平台BaaS功能性调研,分为试用版和内部版,纳管联盟链,跨链管理,支持异构链hyperledger等。
2023-09-10 08:39:34 366
原创 长安链BaaS服务平台调研
趣链ChainMaker服务平台功能性调研。生成组织证书、节点证书和用户(sdk)证书,配置链参数,服务器上启动节点,订阅链节点。链或节点是在本地启动。部署简单,组件也相比bsp较少,不支持应用接入,不支持在服务平台远程管理节点主机,不支持动态管理节点。建好链后在服务平台再增删节点,长安链不支持。长安链也不支持更改节点的共识类型。部署合约、冻结合约、解冻合约、注销合约、升级合约、更改区块配置。长安链投票以组织为最小单位,不论某个组织是否有多个节点。冻结合约的投票一旦发起,该合约将不能再被调用。
2023-09-09 22:42:18 754 4
原创 合并jar包引发gradle传递依赖失效
gradle中自定义任务合并jar包,手动上传jar包到maven仓库,动态静态依赖,合并jar包导致gradle依赖传递失效,maven仓库中的pom文件不完整。compile/api/implementation。publishing,generatePomFileForMavenPublication,mvn deploy:deploy-file,-DpomFile。
2023-08-21 22:59:44 356
原创 Solidity合约开发注意项
solidity合约开发注意项,实现集合,实现集成,字节码指令,slot,mstore,assembly,参数是结构体的event的签名等。
2023-07-22 11:06:18 274
原创 Nodejs项目包发布
选择authenticator application方式,可以下载Google Authenticator,扫码输入app里的验证码。登录npm账号(需要在Google Authenticator中接收验证码并最后输入)配置package.json,项目名称要避免重复,也避免不正式,否则可能被检测为垃圾。将npm的bin下的nrm等命令,加到环境变量。nrm是npm源管理器,可以切换不同源。查看node和npm版本。下载nodejs压缩包。解压nodejs压缩包。查看npm的bin目录。
2023-05-26 19:29:08 1836
原创 这是一篇使用ChatGPT生成的关于隐私计算的文章
隐私计算作为一种保护个人隐私的技术,具有重要的意义和广阔的应用前景。通过使用不同的隐私计算算法,我们可以在保护数据隐私的同时进行计算和分析。未来隐私计算将在各个领域中发挥重要作用,为数据安全和隐私保护提供可行的解决方案。随着数字化时代的发展,隐私保护成为了一个日益重要的话题。隐私计算作为一种保护个人隐私的方法,具有广泛的应用前景。本篇博客将为您提供一个直白的介绍,解释隐私计算的基本概念和原理,并探讨一些常见的隐私计算算法的实现方式。标题:隐私计算:直白介绍和算法实现。拉普拉斯机制和指数机制。
2023-05-20 17:56:39 713
原创 Ethereum以太坊事件日志查询参数
以太坊Ethereum的事件日志查询参数,eventLogs,请求参数topics的含义,indexed索引参数,solidity的enum枚举。
2023-05-18 23:18:55 1498 5
原创 FISCO-BCOS链节点黑名单对共识的影响
目的:在fisco-bcos(v2.8.0)环境下,测试黑名单对节点共识的影响。getPeers获取某节点所连接的p2p连接列表。获取共识节点列表。
2023-04-16 17:54:06 565
原创 HttpClient无效的接口url仍可访问的问题
运行发现可以正常调通,简单调试发现其内部会摘取出主机名和端口号,端口号之后的非数字字符将被跳过。HttpClient尝试调用一个无效的接口url(故意污染了端口号),如。,是否仍然可以调通。
2023-02-20 21:49:11 221
原创 SpringBoot结合keytool配置ssl双向认证通信
SpringBoot结合keytool配置ssl双向认证通信。keytool、SpringBoot、restTemplate、ssl、双向认证、https、keystore、jks。
2022-11-10 23:56:15 2593 2
原创 Solidity语法大致总结
Solidity的数据类型,含合约、字符串、数组、结构体、mapping映射;作用域或访问修饰符,含private、public、internal、external;函数修饰符,含pure、view等;修饰器modifier;数据位置,含memory、storage等;事件event;异常处理assert、require、revert、try/catch;重载、继承、抽象合约、重写override、接口interface、库library等。提供示例代码在remix下可测试运行。..............
2022-08-11 23:39:33 3284
原创 Wireshark网络抓包
研究各个网络协议以及本地远程抓包分析,少不了或同类工具。这里对3种场景做个简单的抓包。首先设置Wireshark过滤器,开始捕获。然后打开PC(本地IP:192.168.0.102)的浏览器,访问一个自己练手的的中医药信息网站:http://124.223.54.92:8116/,并搜索“神医喜来乐”,如上搜索到一些相关结果,再来查看Wireshark捕获的内容,只能看到浏览器->服务器的单向请求(No=64,左侧箭头代表src->dst即客户端192.168.0.102->服务端124.223
2022-07-03 22:09:40 3332
原创 jps显示java进程不全
习惯性地便捷的命令,快速获取java进程信息,可能会出现显示不全的现象。1、jps显示不全,只有一个的进程,可以看到只有一个java进程,实际上是有更多进程。2、可以看到所有用户下的所有进程,包含了3、可能容易被忽略,只是获取当前用户下的所有java进程,root权限的用户可以获取到所有用户下的所有java进程,所以再用试试,可以获取到所有用户下的所有java进程,同理可以切换到root用户,再查看,4、启动后也可以获取java进程列表,试下在不同用户下启动,先在当前用户下启动,只能获取到当前用户
2022-07-02 09:22:03 1734 4
原创 InnoDB索引的底层实现和实际效果
一、索引底层实现1.1、局部性原理1.2、B树和B+树二、索引实际效果2.1、联合索引和最左前缀匹配2.2、全表扫描一定比使用索引慢?2.3、覆盖索引和回表查询2.4、排序order by和using filesort2.5、MySQL8之前只支持索引ASC升序
2022-04-15 16:02:01 1815
原创 MySQL的共享锁、排他锁、意向锁
目录一、共享锁(Shared Lock)二、排他锁(EXclusive Lock)三、意向锁(Intention Lock)MySQL锁的模式有三种:共享锁、排他锁、意向锁(意向共享锁、意向排他锁)。一、共享锁(Shared Lock)共享锁(Shared Lock),又称S锁、读锁。针对行锁。当有事务对数据加读锁后,其他事务只能对锁定的数据加读锁,不能加写锁(排他锁),所以其他事务只能读,不能写。📢主要为了支持并发读的场景,读时不允许写操作。加锁方式:select * from T wher
2022-04-10 13:23:55 7009
原创 数据库事务隔离级别举例详解(续)
文章目录一、前言二、测试2.1、读未提交2.1.1、脏读2.1.2、不可重复读2.1.3、幻读2.2、读已提交2.2.1、不可重复读2.2.2、幻读2.3、可重复读2.3.1、幻读2.4、串行化2.4.1、读写互斥2.4.2、写读互斥2.4.3、写写互斥2.4.4、读读不互斥一、前言在MySQL8中,实际运行一些并发的事务,看四个隔离级别中脏读、不可重复读和幻读的影响。在上一篇数据库事务隔离级别举例详解中涉及的事务A和事务B,分别对应Navicat的2个会话窗口。测试每一种隔离级别前,应该在2个会话
2022-04-07 20:45:15 914
原创 手写Lock不可重入的公平锁
目录一、前言1.1、AQS1.1.1、信号量Semaphore1.1.2、计数器CountDownLatch1.2、CAS1.3、LockSupport二、手写实现2.1、获取释放锁的细节步骤2.2、代码实现一、前言Jdk的锁常见有两种:synchronized关键字和Lock接口,Lock接口,最常用可重入锁ReentrantLock,底层实现是AQS+CAS+LockSupport。这里简单手写一把不可重入的公平Lock锁。1.1、AQSReentrantLock中的Sync成员变量,继承自
2022-03-14 08:00:00 975
原创 手写JDK动态代理
目录一、准备工作二、静态代理的简单实现三、JDK动态代理的简单实现3.1、自动生成动态代理类的java源文件3.2、自动编译生成的源文件得到class字节码文件3.3、加载字节码文件到JVM以生成代理对象3.4、JDK动态代理工具类实现代码3.5、测试一下环境:OpenJDK(Zulu 8.58.0.13-CA-macos-aarch64)需求:我们常用AOP做各种切面业务,AOP的实现依赖于JDK动态代理和cglib,关于JDK动态代理的实现原理,我们可以自己做个简单实现来理解。一、准备工作首先提
2022-01-02 09:00:00 995
原创 浅谈Java垃圾回收器之二
目录一、G1回收器1.1、G1的缺陷二、ZGC回收器2.1、概述2.2、分区模型2.3、着色指针2.4、过程2.4.1、初始标记2.4.2、并发标记/重定位2.4.3、再标记2.4.4、并发转移准备2.4.5、初始转移2.4.6、并发转移2.5、总结三、友情链接一、G1回收器1.1、G1的缺陷空间上,支持部分回收,为了进行部分回收,G1实现了RSet管理对象的引用关系,内存利用率不高,通常引用关系的处理需要额外消耗内存,一般占整个内存的1%~20%左右;时间上,支持几十个GB或者上百个GB,不能支持
2021-12-01 23:37:03 663
原创 浅谈Java垃圾回收器之一
目录一、垃圾回收算法1.1、标记-清除1.2、标记-整理1.3、复制算法二、垃圾回收器2.1、Serial串行回收器2.2、Parallel并行回收器2.3、CMS并发标记回收器2.3.1、三色标记法2.3.2、CMS对浮动垃圾的解决方案2.3.3、CMS对漏标的解决方案2.4、G1回收器2.4.1、G1对漏标的解决方案2.4.2、G1的分区模型
2021-11-21 22:46:50 1422 3
原创 SpringBoot项目读取依赖jar包中的文件
目录一、SpringBoot项目读取依赖jar中文件二、普通Java工程读取依赖jar中文件一、SpringBoot项目读取依赖jar中文件目前 Java 服务端开发最主流的方式是 SpringBoot,整个项目打包为一个可运行 jar 包,解压打开后看到结构如下:项目中依赖的其他 jar 包则被打包在 artwork-web-0.0.1-SNAPSHOT.jar\BOOT-INF\lib 目录下,如何在项目运行中读取所依赖 jar 包,甚至是所依赖 jar 包自身内部依赖的 jar 包里的各种指定
2021-09-30 10:24:44 6978
原创 union和子查询中order by一起使用导致排序失效问题
一、前言分页查询的需求如同家常便饭,多数情况下主要利用order by和limit即可实现,有些稍复杂一点的可能需要用到union操作去连接多个子查询结果集。然而这三个操作是有一些需要留意的问题,下文将列举出3个可能碰到的情况。MySQL版本:5.7.21union和子查询中order by一起使用导致排序失效的问题
2021-09-23 23:22:28 3126
原创 乐观锁失败异常ObjectOptimisticLockingFailureException
一、问题描述新开发的系统,往往可能需要将旧版的系统中的历史数据,用脚本的方式在新系统中跑一遍业务流程,其实可能是用Java代码自动调用一些业务流程接口。在执行过程中发现报错:2021-01-27 19:32:46.300 [http-nio-5090-exec-4] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet]:182 - Servlet.service() for servlet [dispatcherServlet] in context with path
2021-01-30 17:31:20 7204
原创 Feign客户端的定义和注入使用及注意事项
业务场景:用户服务customer调用订单服务order。解决问题:Feign客户端的定义,Feign客户端的注入使用。一、Feign客户端的定义及项目模块划分order项目分模块,在order-dto中定义Feign客户端接口。dto中同时定义入参Req和出参DTO,便于其他模块中的微服务最小化最精简引入依赖。注意:接口参数中都添加上各自注解,否则会产生文末的异常。package com.szh.order.api;@FeignClient(value = OrderApi.SERVICE
2020-11-18 18:17:03 1114
原创 Eclipse和IDEA常用快捷键对比记忆
Eclipse和IDEA常用快捷键对比记忆功能EclipseIDEA关闭WindowCtrl+WCtrl+F4标准换行打印System.out.println()sysosoutmain方法mainpsvm删除行Ctrl+DCtrl+Y恢复或反撤销Ctrl+YCtrl+Shift+Z查看文档注释鼠标悬停Ctrl+Q跳至指定行Ctrl+LCtrl+G重命名变量名或方法名A/t+Shift+RShift+F6
2020-11-18 15:04:29 1354
原创 java -D参数设置系统属性无效
我们都知道如何在Java中获取系统属性:String proxyHost = System.getProperty(ESClientConstance.HTTP_PROXY_HOST);这样可以获取操作系统默认的一些属性值。如果我们需要自定义一些系统属性,那么这样定义:-Dhttp_proxy_host=192.19.19.19但是要注意下面这种情况,会导致java -D失效,导致System.getProperty获取不到属性值。比如我的这样一个以java -jar方式启动的脚本:noh
2020-06-23 19:07:13 2286
原创 秒杀抢券系统实现的注意事项
秒杀抢券系统往往有一些需要注意的具体的地方,有接口安全方面的,也有数据库安全方面的,高并发方面的,这里主要从前后端两方面进行阐述。前端前端的一条原则:尽可能地保证发往后端的数据和请求是有效的。具体措施如下:添加手机号等账号的合法性验证秒杀请求携带接口签名点击秒杀按钮后置灰禁用比如,对需要输入手机号的秒杀抢券活动来说,为了避免掉恶意请求,尽量在前端添加手机号合法性的验证。当然,随着手机号的不断增多,现在已经出现19+开头的号码,虽然前几年的验证方法很可能已经不适用于现在的实际情况,但是可以不
2020-06-15 16:18:41 2716
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人