面向云技术架构 - 痴者工良

  • 首页
  • 工良写的电子书
    • kubernetes 教程
    • 从 C# 入门 Kafka
    • 多线程和异步
    • 动态编程-反射、特性、AOP
    • 表达式树
  • 本站文章导航
  • 隐私政策
愿有人陪你颠沛流离
遇到能让你付出的事物或者人,都是一种运气。
能遇到,就该珍惜。或许你们最终没能在一起,但你会切实地感受到力量。
正因为这样,那段相遇才变得有价值,才没有辜负这世间的每一段相遇。
数据库

工良出品:包教会,Hadoop、Hive 搭建部署简易教程

[TOC] 导读 最近一个数据分析朋友需要学习 Hive,刚好我也想学,便利用手头的服务器搭建一个学习环境,但是搭建过程中,发现网上的教程很多过时了,而且部署过程中,很多地方走不通,博主也没有给出对应的说明。花了大力气才从各种资料中完成 Hadoop、Mysql、Hive 三者的部署。 因此,本文记录在 Windows 下部署三者的过程以及如何解决部署过程中出现的问题,减少读者折腾消耗的时间。 Hadoop、Hive 是什么 由于 Hadoop、Hive 都是 Java 编写的程序,因此在 Windows 、Lin…

2023年3月19日 0条评论 32点热度 0人点赞 痴者工良 阅读全文
.NET

自动化测试如此容易!多语言自动化测试框架 Selenium

介绍 Selenium 官网:https://www.selenium.dev/ Selenium 是功能强大的自动化测试工具集,是支持 Web 浏览器自动化的一系列工具和库的总括项目,一共包括以下三个项目: Selenium WebDriver Selenium IDE Selenium Grid Selenium 的核心是 WebDriver,可以在许多浏览器中交换运行,WebDriver 以原生的方式驱动浏览器,。 WebDriver 架构设计如下: 对每种浏览器编写一个 Driver,如 ChromeDri…

2023年2月20日 0条评论 236点热度 0人点赞 痴者工良 阅读全文
.NET

C# 简单字符串压缩算法

void Main() { string str = "A-A01A05-A01-01-02"; byte[] data = new byte[16]; var span = data.AsSpan(); ulong l = 0; int index = 1; int count = 0; for (int i = 0; i < str.Length; i++) { var value = HashFind.GetValue(str[i]); if (index <= 10)[......]继续阅读

2023年2月13日 0条评论 200点热度 1人点赞 痴者工良 阅读全文
.NET

1.5万字长文:从 C# 入门 Kafka

[TOC] 作者:痴者工良 个人网站:https://www.whuanle.cn 博客园:https://www.cnblogs.com/whuanle/ 本教程地址:https://kafka.whuanle.cn/ 本教程是关于 Kafka 知识的教程,从 C# 中实践编写 Kafka 程序,一边写代码一边了解 Kafka。 教程内容是过年期间写的,写到一半假期结束要上班了,将已完成的部分整理出来,就不继续写了。 1, 搭建 Kafka 环境 本章的内容比较简单,我们将使用 Docker 快速部署一个单节点的…

2023年1月27日 0条评论 422点热度 1人点赞 痴者工良 阅读全文
.NET

疯狂吐槽 MAUI 以及 MAUI 入坑知识点

这里是笔者在开发 MAUI 应用时踩的坑,以及一些笔记的汇总。 不得不说 MAUI 挺垃圾的。 如果不是 Mono 金玉在前,估计社区不会有多少人关注败絮 MAUI。 目前 .NET 已经升级到 7.0,但是 MAUI 还是一如既往的拉跨,如果开发过 MAUI,做过定制,自定义标题栏之类的,便会发现 MAUI 有多难受。 MAUI 不知道跟 UWP 有啥关系,但是 MAUI 很多东西感觉都是在延续 UWP 的设计,而且 MAUI 也很可能是下一个 UWP。 如果是 Windows 或者 Linux 桌面开发,建议 …

2023年1月18日 0条评论 1652点热度 2人点赞 痴者工良 阅读全文
笔记和吹水

Linux 磁盘读写性能测试工具 fio

fio 即 Flexible io tester,基于 Linux 实例的块卷性能测试。 https://docs.oracle.com/en-us/iaas/Content/Block/References/samplefiocommandslinux.htm 测试命令如下: fio -filename=/tmp/test.file \ -direct=1 \ -iodepth 1 \ -thread -rw=randrw \ -rwmixread=70 \ -ioengine=psync \ -bs=4k \ …

2023年1月16日 0条评论 242点热度 0人点赞 痴者工良 阅读全文
.NET

ASP.NET Core 生成签名安全的 JWT Token

大多数情况下,大家使用的生成 JWT Token 代码是这样的: // 定义用户信息 var claims = new Claim[] { new Claim(ClaimTypes.Name, userName) }; SymmetricSecurityKey key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_tokenOption.SecurityKey));[......]继续阅读

2023年1月13日 0条评论 386点热度 2人点赞 痴者工良 阅读全文
笔记和吹水

使用 ANTLR4 生成代码分析 MYSQL

环境搭建和生成 首先安装 Java 8 以上的版本。 打开 https://www.antlr.org/download.html, 找到 "ANTLR tool itself ",或者直接点击 https://www.antlr.org/download/antlr-4.11.1-complete.jar 下载包。 然后打开 https://github.com/antlr/grammars-v4 下载对应语法分析模板。 执行命令生成 java 代码。 java -jar antlr-4.11…

2023年1月12日 0条评论 420点热度 0人点赞 痴者工良 阅读全文
笔记和吹水

apisix 路由路径转发

场景,访问 a.com/aaa 时,反向代理 127.0.0.1:9999/ 服务,自动将路径后缀路径转发。 如果访问 a.com/aaa/bbb,实际请求 127.0.0.1:9999/bbbb。 首先设置路径区配: 接着设置请求改写: ^/aaa(/|$)(.*) [......] 继续阅读

2023年1月6日 0条评论 434点热度 0人点赞 痴者工良 阅读全文
笔记和吹水

mysqld_exporter 插件结合 Promethues 监控 Mysql 数据库

首先在数据库中创建新的用户: CREATE USER 'exporter'@'%' IDENTIFIED BY 'promethues' WITH MAX_USER_CONNECTIONS 3; GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'%'; flush privileges; exporter 是用户名,promethues 是密码。 定义连接数据库的配置文件(my.cnf): [client] host=127.0.0.1 …

2023年1月6日 0条评论 196点热度 0人点赞 痴者工良 阅读全文
笔记和吹水

docker 部署单机版本 apisix

首先创建虚拟网络,以便应用之间通讯: docker network create apisix-network --driver bridge 创建 etcd 持久化存储卷: docker volume create --name etcd-data 启动单机版本的 etcd: docker run -d --name etcd \ --network apisix-network \ --volume=etcd-data:/etcd-data \ -p 2379:2379 \ -p 2380:2380 \ -e …

2023年1月5日 1条评论 556点热度 0人点赞 痴者工良 阅读全文
.NET

C# ElasticSearch 简单使用方法

连接 如果不想对外暴露密码,可以自行写一个 AuthorizationHeader,只使用 Base64 处理后的 Basic 认证密钥。 using Elastic.Clients.Elasticsearch; using Elastic.Transport; public class Program { public class Base64Auth : AuthorizationHeader { private readonly string _base; public Base64Auth(string b…

2022年12月29日 0条评论 362点热度 0人点赞 痴者工良 阅读全文
rust

一个好用的前端打包客户端工具 tauri 介绍

Tauri 是一款应用构建工具包,让您能够为使用 Web 技术的所有主流桌面操作系统构建软件。 官网地址:https://tauri.app/zh-cn/ Tauri 可以构建跨平台的快速、安全、前端隔离应用,Tauri 支持多种创建项目模板的方式: 安装开发环境 Tauri 支持使用 Windows、Linux、Mac 系统进行开发,笔者将介绍在 Windows 下如何开发。 首先需要安装 C++ core desktop features 组件,到这里可以下载: https://learn.microsoft.…

2022年12月28日 2条评论 3183点热度 0人点赞 痴者工良 阅读全文
操作系统

零拷贝机制

通常程序执行 IO 操作时,需要涉及用户空间和内核空间的两个缓冲区。 只有内核才能跟磁盘等硬件进行操作,因此数据在流向程序时,必定会先存在于内核缓冲区,内核缓冲区又称为 PageCache,不同操作系统的 PageCache 机制不一样。 内核缓冲区:系统内核在内核空间中定义的内核缓冲区,即 PageCache。 用户缓冲区:通过 C 语言或其它语言提供的标准 IO 读写函数在用户空间定义的缓冲区。 从上图中可以看到,IO 操作有两种方式: 缓冲IO:同时使用用户缓冲区和内核缓冲区。需要 3 次数据复制以及 1 次…

2022年12月22日 0条评论 398点热度 3人点赞 痴者工良 阅读全文
.NET

C# Mongodb 操作:嵌套、数组 等示例

1,一个字段是数组,如果数组中不存在这个记录时,向数组增加一个记录。 FilterDefinitionBuilder<WorkflowDo> fd = Builders<WorkflowDo>.Filter; var f = fd.And(fd.Eq(x => x.Id, record.Id), fd.Not(fd.ElemMatch(x => x.Definition, x => x.Version == newVersionStr))); UpdateDefinitio…

2022年12月7日 0条评论 358点热度 0人点赞 痴者工良 阅读全文
.NET

Windows 下 C# 打印机操作方法

背景: 查找了很多库,要么收费,要么太旧用不了。 经过大量测试,写了打印机的相关代码。 实现的代码不依赖于第三方库。 核心代码 引入这两个库: System.Drawing.Printing Vanara.PInvoke.Printing 这两个库用于使用 winspool.drv 服务,可以避免编写大量 库函数调用代码。 首先编写基础代码: public class PrinterBase { /// <summary> /// 获取默认打印机 /// </summary> /// �…

2022年12月3日 0条评论 640点热度 1人点赞 痴者工良 阅读全文
Golang

goioc:一个使用 Go 写的简易的 ioc 框架

goioc 介绍 goioc 是一个基于 GO 语言编写的依赖注入框架,基于反射进行编写。 支持泛型; 简单易用的 API; 简易版本的对象生命周期管理,作用域内对象具有生命; 延迟加载,在需要的时候才会实例化对象; 支持结构体字段注入,多层注入; 对象实例化线程安全,作用域内只会被执行一次。 下载依赖: go get -u github.com/whuanle/goioc v2.0.0 快速上手 定义接口: type IAnimal interface { Println(s string) } 实现接口: ty…

2022年11月27日 0条评论 264点热度 0人点赞 痴者工良 阅读全文
笔记和吹水

Windows 修复命令

背景: 打不开远程设置。 也打不开 gpedit.msc。 修复命令(cmd): @echo off pushd "%~dp0" dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientExtensions-Package~3*.mum >List.txt dir /b C:\Windows\servicing\Packages\Microsoft-Windows-GroupPolicy-ClientTools-Pack…

2022年11月26日 0条评论 384点热度 0人点赞 痴者工良 阅读全文
.NET

一个很好的 FluentValidation 示例

WorkflowDefinitionValidator 是整个验证入口,上一个非常复杂的对象结构。 参考:https://github.com/serverlessworkflow/specification/blob/main/specification.md 通过依赖注入,继续检查下一层的字段。 /// <summary> /// Represents the service used to validate <see cref="WorkflowDefinition"/>s /// &…

2022年11月24日 0条评论 362点热度 0人点赞 痴者工良 阅读全文
.NET

C# 依赖注入配置全局 HttpClient 行为

代码示例如下: System.Net.ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true; services.ConfigureAll<HttpClientFactoryOptions>(options => { options.HttpMessageHandlerBuilderActions.A[......]继续阅读

2022年11月22日 0条评论 494点热度 0人点赞 痴者工良 阅读全文
12345…23

痴者工良

高级程序员劝退师

站长简介

一个逗B,爱好技术交流,目前专注于后端开发、Devops、微服务架构、持续交付、容器化、Kubernetes 等。擅长 .NET(C#)、Go 语言。






友情链接
  • 懒得勤快
  • 路遥工具箱

COPYRIGHT © 2022 whuanle.cn. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

粤ICP备18051778号

粤公网安备 44030902003257号