- 博客(95)
- 资源 (2)
- 收藏
- 关注
原创 你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问
你不能访问此共享文件夹,因为你组织的安全策略阻止未经身份验证的来宾访问一、此问题需要修改Win10 网络策略1、运行(win+r),输入“gpedit.msc”启动本地组策略编辑器;2.找到设置项“启用不安全的来宾登录”计算机配置 -> 管理模版 -> 网络 -> Lanman工作站 -> 启用不安全的来宾登录3.“启用不安全的来宾登录”状态设置为 “启用”4.确定退出,验证是否成功!二、如果任然没有解决问题,报错信息依然存在,则需..
2021-04-29 10:54:59
10679
5
转载 Golang好文分享-GPM调度模型
第一章 Golang调度器的由来第二章 Goroutine调度器的GMP模型及设计思想第三章 Goroutine调度场景过程全图文解析一、Golang“调度器”的由来?(1) 单进程时代不需要调度器我们知道,一切的软件都是跑在操作系统上,真正用来干活(计算)的是CPU。早期的操作系统每个程序就是一个进程,知道一个程序运行完,才能进行下一个进程,就是“单进程时代”一切的程序只能串行发生。5-单进程操作系统.png早期的单进程操作系统,面临2个问题:1.单一的执行流程.
2021-04-09 23:56:40
458
原创 Docker部署IPFS集群
官方参考文档:https://cluster.ipfs.io/documentation/quickstart/前提条件:DockerDocker-Compose下载ipfs-cluster-ctl命令行管理工具wget https://dist.ipfs.io/ipfs-cluster-ctl/v0.13.1/ipfs-cluster-ctl_v0.13.1_linux-amd64.tar.gzdocker-compose文件wget https://raw.githu
2021-04-09 13:28:09
933
原创 Golang小菜-for range
Golang小菜-for rangefor range 是golang特有的循环遍历语法,类似于C#里的foreach。for range 也是我们日常开发使用到最多的遍历方式。// 遍历 数组/切片for index,value := range array{ ...}// 遍历 mapfor key,value := range maps{ ...}// 变量channelfor value := range channel{ ...}接下
2021-04-09 13:12:05
1029
原创 开发基础-简单理解协程、线程、进程
简单理解协程、线程、进程进程(process)是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是操作系统分配计算资源的最小单位。 进程中包含最少1个(主线程)或多个线程。 进程是一个正在运行的程序实例,启动一个程序就是启动了一个进程。 操作系统内核管理调度。 进程切换涉及到的资源上下文切换成本巨大。线程(thread)是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。线
2021-04-09 00:28:43
221
原创 Golang小菜-defer
defer 关键字在我们日常开发中是出现频率极高的。defer语句用于延迟调用指定的函数,比如释放资源等。如下,database操作完成后断开链接(随手写的代码)。func process() { cli,err := db.connect("url") if err != nil{ log.Fatal(err) } defer cli.disconnect() cli.insert(.....)}但是defer也是一个有个性的关
2021-04-08 01:41:16
214
原创 Ubuntu部署Drone CI + Github
Ubuntu部署Drone CI + Github参考官方文档https://docs.drone.io/server/provider/github/前提:Docker配置启动Drone CI Server我们使用docker镜像启动DroneCI server.所以我们先看一下启动命令模版docker run \ --volume=/var/lib/drone:/data \ --env=DRONE_GITHUB_CLIENT_ID={{DRONE_GITHUB_C
2021-04-01 11:41:24
376
原创 Ubuntu Golang项目编译报错 cgo: exec gcc: exec: “gcc“: executable file not found in $PATH
Ubuntu Golang项目编译报错 cgo: exec gcc: exec: "gcc": executable file not found in $PATH这个问题原因是项目内有引用c的库.golang在使用cgo调用c的库. 所以是cgo报的错.解决方法:安装gcc就行sudo apt install gcc...
2021-03-26 11:43:29
8319
原创 Golang编码习惯-项目代码目录结构和脚本文件、目录命名规则
项目代码目录结构纯属个人习惯总结/cmd *项目列表,这个目录下面,每个文件在编译之后都会生成一个可执行的文件。目录下无多余代码/cmd/webapi/main.go/cmd/sync/main.go/api常用来存放RESTful接口文件/api/swagger.json/api/swagger.yml/api/api.go/configs *配置相关,这个目录下存放初始化配置脚本,配置文件,(如果有)配置映射脚本。/configs/we..
2021-03-11 14:46:02
1061
1
原创 .Net Core WebApi集成Swagger中间件
前提.Net Core的环境我相信大家都有这里主要说一下Nuget包Swashbuckle.AspNetCore #核心库Swashbuckle.AspNetCore.Annotations #用于生成文档注释的属性拓展包Install-Package Swashbuckle.AspNetCoreInstall-Package Swashbuckle.AspNetCore.Annotations初始化Swagger的初始化的代码写...
2021-02-03 12:15:25
371
原创 Docker镜像导入和导出
Docker镜像从本地文件导入镜像、镜像导出成本地文件导出两种写法:docker save [OPTIONS] IMAGE [IMAGE...]docker save -o filename imagename:tag #-o --outputdocker save > filename imagename:tag像这样导入也是两种写法Usage: docker load [OPTIONS]docker load -i filename .
2021-01-27 16:10:56
364
原创 .Net Core3.1 写Dockerfile生成镜像部署
.Net Core3.1 写Dockerfile生成镜像部署内容:通过dockerfile快速构建镜像,并运行编写DockerfileFROM mcr.microsoft.com/dotnet/aspnet:3.1 AS base //基础镜像WORKDIR /app //切换到 /app 工作目录下 ”cd“COPY ${source:-bin/Release/netcoreapp3.1} ..
2021-01-27 15:29:07
1023
原创 Linux部署IPFS(分布式存储系统)私有网络
Linux部署IPFS(分布式存储系统)私有网络简介:星际文件系统是一个旨在创建持久且分布式存储和共享文件的网络传输协议。它是一种内容可寻址的对等超媒体分发协议。在IPFS网络中的节点将构成一个分布式文件存储系统。官网:https://ipfs.io/github(golang实现):https://github.com/ipfs/go-ipfs前提:golangLinux搭建Golang开发环境本机系统 deepin V20,其他Linux系统也适用文件目录我这边打算.
2021-01-22 18:26:30
1420
1
原创 Asp.Net WebApi 集成日志类库 - Serilog
简介Serilog是.Net Core平台上非常著名的结构化日志类库。Serilog 通过NuGet分发,项目包括一个Seirlog核心项目Seirlog和很多接收器sinks(超过100个),这些接收是通过插件的方式来实现将日志写入到各种终端,文件,邮件,数据库或日志服务器。博文涉及内容我会通过代码演示如何生成日志记录,完成依赖注入,输出到控制台,输出到目录。前提条件.Net Core 的环境我相信大家都有这里重点说一下涉及到的Nuget包Serilog.AspNetCor
2021-01-19 10:30:49
1196
1
转载 以太坊数据同步常见问题集锦
常见问题列表区块差几十块始终同步不完,怎么办?这是大家同步数据遇到的第一个难题。当大家兴致匆匆的启动程序,看着区块离最新的区块越来越近,难免兴奋起来。但当差十几块或几十块的时候,却是漫长的等待,于是忍不住要问,出什么问题了吗?针对此问题怎么解决,方案有两个:一,等。程序是在正常运行,需要的就是耐心等待;二、升级硬件配置,重新再来一次。问题原因:显示同步剩下几十块,那只是同步了区块的头部信息,剩下漫长的等待才是在同步真正的区块结构体。此时如果查看区块的数据情况,并没有发生明显的增加。在此过
2021-01-06 14:50:31
3111
11
原创 Linux搭建Golang开发环境
Linux搭建Golang环境文章基于Ubuntu环境演示,但适用于所有linux系统1.下载可执行文件考虑到国内的网络环境,所以不推荐搭建从google那边下载,这边用的是go语音中文网提供的资源wget https://studygolang.com/dl/golang/go1.14.13.linux-amd64.tar.gz2.解压到指定文件夹 /usr/localtar -C /usr/local -zxvf go1.14.13.linux-amd64.tar.gz.
2021-01-06 11:07:57
1280
原创 联盟链HyperledgerFabric2.2生产环境部署流程(一)- Fabric CA
特别说明一下,本系列博文(多篇)是以Hyperledger Fabric官方文档为基础,模拟搭建一个由4个组织(R1,R2,R3,R4)组件的联盟链系统。全文会以这篇文章的描述顺序一步一步来,因为我觉得这样会给大家一个更直观的感受。Hyperledger Fabric示例网络原文当前页文章主要学习CA的服务部署,原文地址:https://hyperledger-fabric-ca.readthedocs.io/en/latest/users-guide.html证书颁发机构(Cert..
2020-11-20 20:57:07
3190
12
原创 Ubuntu/Deepin下安装nodejs环境
我的演示环境是Deepin 20系统,操作指令是跟Ubuntu是一样的所以Ubuntu/Deepin用户可以完全按照下面的指令来操作,不会有任何问题!1.下载安装包wget https://nodejs.org/dist/v14.15.1/node-v14.15.1-linux-x64.tar.gz这是我当前安装时的Nodejs LTS(长期更新版)的最新版本。2.解压tar -zxvf node-v14.15.1-linux-x64.tar.gz#解压得源文件夹3
2020-11-18 19:54:21
494
原创 搭建Solidity本地编辑环境,Remix-IDE + Remixd黄金组合,加载本地合约代码
问题描述:相信做过solidity智能合约开发的小伙伴们应该都用过在线Remix编辑器。不可否认它是目前来看最方便快捷且功能强大的在线编辑器。但是Remix也不是完美的,在使用中我们也遇到了很多问题:1.本地文件的import不灵活,虽然可以批量导入,但是却不能将多个文件夹下的问题同时导入(无法导入文件夹)。2.文件目录管理难,大型的dapp项目合约也是要有合理的结构的。虽然最新版本支持Create Folder,但是当我们想要移动文件到另一个目录时却办不到。3.编辑器加载慢,因为Rem
2020-11-13 18:35:51
4437
1
原创 Ethereum/Quorum笔记本
Quorum实战笔记设置Quorum日志输出级别在startnode.sh文件中修改verbosity值--verbosity value Logging verbosity: 0=silent, 1=error, 2=warn, 3=info, 4=debug, 5=detail
2020-10-16 17:48:36
258
转载 简单的跨链实现,6个核心接口就够了!
作为跨链交互的基础,接口(API)是跨链平台中重要一环。目前各大区块链平台提供了丰富的接口,这些接口是否都要在跨链平台中重新实现?为了实现普适通用的跨链平台,如何确定接口设计基调?为了满足复杂多变的跨链需求,哪些接口是必须的?WeCross的接口实现是怎样的?本文将带你一探究竟。区块链接口众多,跨链是否“我都要”随着区块链技术的发展,区块链被广泛地运用到各行各业中,为了支撑越来越多样的应用场景与复杂的业务需求,区块链接口也在不断增长、完善。目前,主流区块链平台动辄提供几十个接口。丰富的接口...
2020-09-14 14:40:01
1018
原创 最简单方便的Linux更改Docker数据(镜像/容器)的存放路径(位置)方法,适用于刚安装Docker的情况
我们知道Docker应用本身并不大,并不会占用过多的磁盘空间。但如果我们运行容器服务本身是用来做数据存储之类的,那么就不一样了。Docker默认在Linux中默认数据存放在 /var/lib/docker 目录下的,我们可以通过 df -h 命令查到(如果你的docker已经有镜像和运行的容器),比如:var一般都是我们系统磁盘的位置,那么就非常的费磁盘空间了。我的服务器有一块500G的数据盘,并被我挂载到了 /mnt 目录下(Linux服务器挂载磁盘方法),所以我希望我的Docker数
2020-08-25 15:13:15
9038
2
原创 Ubuntu 18.04 安装Docker 和 Docker-Compose方法
Ubuntu 18.04 Docker官方安装Docker CE和 Docker-Compose流程简介:Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。简言之,就是可以在Linux上镜像使用的这么一个容器。使用Docker的好处:1.简单易操作,简化了以往复杂的应用程序安装步骤,使用docker会变得非常简便。2.可兼容多种应用,Web
2020-08-25 11:34:24
4158
原创 记一次 Linux云服务器(Ubuntu18.04)数据盘(磁盘)挂载流程!
大家都知道在购买云服务器时,我们会选配系统盘的大小,以及数据盘。系统盘是实例化服务器时存储系统文件被挂载,但数据盘是默认没有挂载的。那么我们是没法直接用它来存储我们的数据的,如果要使用,这个时候我们需要先对其进行格式化,并挂载到我们想要放置的目录。接下来我会实际操作 Linux云服务器(Ubuntu18.04)来完成磁盘挂载,我现在要把我的500GB数据盘挂载到 /mnt 目录下。我们可以先查看当前的磁盘目录详细信息df -h这里我们可以看到系统盘 /dev/vda1 的使用情况.
2020-08-24 12:32:43
2302
2
原创 使用C# 和基于.Net的以太坊库Nethereum以太坊及智能合约交互实战篇(一)
官网:Nethereum官网Github地址:Github上的Nethereum库简介:Nethereum是用于Ethereum的.Net集成库,可简化智能合约管理以及与以太坊节点的交互,无论这些节点是公共的(如Geth,Parity还是私有的,如Quorum和Besu)。Nethereum是针对netstandard 1.1,net451以及便携式库而开发的,因此它与所有主要操作系统(Windows,Linux,MacOS,Android和OSX)兼容,并且已经在云,移动,台式机...
2020-07-24 01:52:15
3492
10
原创 关闭Xshell后程序停止运行?学会使用Screen一招解决你的问题。
不少刚开始用Linux部署应用程序的朋友我相信都会遇到这样的问题,明明已经在在启动程序时使用的 & 后台运行,为啥退出Xshell时运行还是停止了。不错,我也遇到了,于是乎在网上还是找解决方案,Screen。先官方一点的介绍一下这是官网链接http://www.gnu.org/software/screen/,然后长这样,并且还有一段介绍翻译过来是这样的:Screen 是一个全屏幕窗口管理器,它在多个进程(通常是交互式 shell)之间多路传输一个物理终端。 每个虚拟终端都提供.
2020-07-01 23:47:16
4236
原创 Windows环境golang程序开发 报错exec: gcc: executable file not found in %PATH%
这个就是一个缺少gcc编译器的报错而已,只需要下载正确的程序包安装配置好即可1.打开mingw-w64官网,并点击download跳转到下载页面2.选择我们的windows版本安装包,并点击对应连接查看信息3.点击进入包下载界面,会自动下载的4.打开程序包安装5.正确选择自己环境的配置,然后下一步6.选择安装路径,并记下自己的安装路径,因为我们一会儿还需要配置环境变量然后下一步开始安装7.到这里我们的安装已经安装,下一步配置环境变量.
2020-06-18 18:15:42
19723
7
原创 Quorum geth控制台解锁账户报错 Error: account unlock with HTTP access is forbidden
由于Quorum底层是基于Ethereum(以太坊)开发的,不久前Ethereum出于安全考虑,geth控制台默认禁止了HTTP的通道,导致用户想要通过控制台输入命令操作失败.问题就是这个问题,解决也很好解决. 只需要在启动节点时(./startnode.sh里)加入一段解锁的指令就好--allow-insecure-unlock如果你不知道怎么加,那我再加个例子:PRIVATE_CONFIG=ignore nohup geth --datadir node1 --nodiscover
2020-06-17 11:45:13
1170
4
原创 Golang开发Web API服务器,echo框架集成Swagger快速开发API文档
之前在公司用C# + ASP.Net Core开发Web API服务器中,用到Swagger这个插件来生成API文档觉得非常方便。于是最近在学习golang开发Web API服务器的时候想着也集成Swagger到项目中,但是在网上找了很多文档都是不可行的,并且还很复杂,要么就是说一半的,写着写着不知道改怎么写了。但是我不坑人,我接下来分享的我现在学习能够正常使用的方法,并且这篇博文我会在后面的使用过程中,有新的总结或者解决问题的方法都会更新出来。这是要用到的github上的Swagger包链接,
2020-06-13 02:08:21
1671
原创 golang web服务器开发使用JsonWebToken(JWT)身份验证
jwt的介绍我就不再写了,之前的文章有介绍过Asp.Net WebApi 使用JsonWebToken(JWT)身份验证,这篇文章主要简单说一下在golang的使用。主要文件package utilsimport ( "github.com/dgrijalva/jwt-go" //引入的jwt包 "time")//自定义Claims,继承包内的Claimstype jwtCustomClaims struct { jwt.StandardClaims // 追
2020-06-11 01:19:25
585
原创 Asp.Net WebApi 使用JsonWebToken(JWT)身份验证 ,大白话讲解
JWT是什么东西我就不说太多了,我就简单介绍,要看官方一点的解释可以百度,反正我是受不了看那个。JWT现在比较流行的跨域认证解决方案,其最大的特点我认为是:无需在服务端保存客户端会话信息(session)这个好理解,以往用户login时,向服务端发起申请时都会收到来自服务端随机生成的一个token信息,这个token信息会在服务端以及客户端都保存下来,客户端发起请求时带上这个token,服务端验证有效即可认为是有效用户操作行为。这里面的问题就是服务端的验证,首先服务端必须在生成token时把它存储到
2020-05-29 01:37:12
2359
原创 Quorum创世块初始化失败,maxCodeSize无效,Quorum geth init genesis.json error:Fatal: maxCodeSize data invalid
问题:Fatal: maxCodeSize data invalid: maxCodeSize & maxCodeSizeChangeBlock deprecated. Consider using maxCodeSizeConfig.新版本2.5.0的Quorum初始化文件做了修改,genesis.json文件的maxCodeSize、maxCodeSizeChangeBlock...
2020-05-02 19:09:38
805
原创 Docker容器之间通信实战,.Net Core应用连接redis、mysql
问题:我的在docker上部署了自己开的.Net Core应用无法与容器内的redis、mysql通信,报错连接不上。解决方案:通过在docker中搭建Bridge network(桥接网络),容器接入Bridge network,通过Bridge network来完成通信连接。实施:部署docker ,容器通信原理我就不用官方理论性话语描述来,太累且说的复杂了,感兴趣的朋友网...
2020-04-28 16:30:59
1641
原创 联盟链Quorum(基于raft共识)部署流程(三)- 部署基于Quorum链的区块链浏览器
这篇文章算得上是继联盟链Quorum(基于raft共识)部署流程(二)的续篇我的演示系统环境时 Ubuntu 18.04 LTS。环境要求:docker 我的安装方法:# 安装依赖包sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-com...
2020-04-03 16:38:11
1289
1
原创 联盟链Quorum(基于raft共识)部署流程(二)- 部署隐私模块Tessera
这篇文章是继联盟链Quorum(基于raft共识)部署流程(一)的续篇,上一篇文章只是把基础的Quorum节点运行起来,但是隐私模块还没有部署上去,所以本篇主要内容是 Tessera。我的演示系统环境时 Ubuntu 18.04 LTS。环境要求:jdk11 (ubuntu推荐安装方法:sudo apt install openjdk-11-jre-headless)获取Tess...
2020-04-03 15:19:07
1507
11
原创 以太坊合约调用关系,谁才是msg.sender
今天在技术群里跟大家做技术交流,发现还是有很多人还是对以太坊的智能合约调用关系不是很清楚。所以我打算专门写一篇博文来说一下这个问题。直接上代码:contract Wallet{ ERC20Token public token; constructor(address _token) public{ token = ERC20Token(_token);...
2019-12-12 01:25:41
3511
11
原创 goland编译报错cc1.exe: sorry, unimplemented: 64-bit mode not compiled in
主要原因是本地的cc1.exe版本不是64位的,在64位环境下无法编译在网上查了很多方法都失败了,最后还是找到了解决方案https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-snapshot/下载下来解压后,放到自己想放的位置,然后配置环境变量,指向bin目录即可。...
2019-10-19 23:48:29
6334
3
原创 go包下载失败,go get下载失败解决方案,go get golang.org/x 包失败,go代理,goproxy.io
大家都知道,在go工程里引用了墙外的包,导致无法下载所需要的第三方包。要解决这个问题就是加代理。网上各种设置各种换代理的方式我都试过不行,昨天找到一个可行方案,亲测mac,windows都可以正常使用。而且速度还很快哦。直接上连接。===>goproxy这个不仅好用,设置也简单。只需要执行命令行配置环境变量就好。...
2019-10-19 12:15:56
934
ERC20Token.sol
2020-08-03
MinGW-w64 - for 32 and 64 bit Windows
2020-07-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅