本章将介绍:ElasticSearch的作用,搭建elasticsearch的环境(Windows/Linux),ElasticSearch集群的搭建,可视化客户端插件elasticsearch-head的安装及使用,对IK分词器的安装及使用:本章介绍的ElasticSearch操作基于Restful形式(使用http请求的形式),java代码操作请参考下篇 @ 目录 1.ElasticSearch简介 1.1ElasticSearch的使用案例 1.2 ElasticSearch与solr的对…
大家好,我是三友~~ 上周花了一点时间从头到尾.从无到有地搭建了一套RocketMQ的环境,觉得还挺easy的,所以就写篇文章分享给大家. 整篇文章可以大致分为三个部分,第一部分属于一些核心概念和工作流程的讲解:第二部分就是纯手动搭建了一套环境:第三部分是基于环境进行测试和集成到SpringBoot,因为整个过程讲的比较细,所以我称之为"保姆级教程". 好了,废话补多少,直接进入主题. 前言 RocketMQ是阿里巴巴旗下一款开源的MQ框架,经历过双十一考验.Java编程语言实现,有非…
写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些自己的经验,希望能对读者有所帮助.期间参考了许多前人的文章,后文会一一附上链接,在此先行谢过.在下能力有限,经验不足,请大家多多指教. 关键词:Ubuntu16.04 Server   深度学习环境搭建   安装   显卡驱动   CUDA8.0   cuDNN6.0   Bazel   源码编译 …
搭建本地服务器,Web服务器--保姆级教程! 本文首发于https://blog.chens.life/How-to-build-your-own-server.html. 先上图!大致思路就是如此. 前言 暑假因为疫情在家无事可做,便白嫖了阿里云大半年的虚拟主机.虽然它只有1核2G,1M的带宽,但也给了我一个实践的机会,让我有机会了解学习apache.php.js.Linux等等······ 显然!我们已经不再满足于一百多KB的带宽,缓慢的cpu速度和狭小的50G系统盘了!自建一个性能强大,带…
Eclipse for C/C++ 开发环境部署保姆级教程 工欲善其事,必先利其器. 对开发人员来说,顺手的开发工具必定事半功倍.自学编程的小白不知道该选择那个开发工具,Eclipse作为一个功能强大且开源免费又支持多种开发语言的集成开发工具,是小白们入坑的不二选择. 1.Eclipse For Java开发环境部署 Eclipse官方没有直接提供仅开发C/C++的工具包,基于任意一款Eclipse开发环境以插件的方式安装C/C++开发工具,即可实现在Eclipse中开发C/C++程序.本文章以…
1. 前言 本人本来使用国内的开源项目solo搭建了博客,但感觉1核CPU2G内存的服务器,还是稍微有点重,包括服务器内还搭建了数据库.如果自己开发然后搭建,耗费时间又比较多,于是乎开始寻找轻量型的博客系统. 此时hexo蓦然跟我招招手,"嘿,兄弟,是要搭建博客吗?" "嗯嗯,是的,但我配置很低,1C2G,跑不起来太花里胡哨的博客系统."我讪讪答道. "我hexo是纯静态博客框架,一个快速.简洁且高效的博客框架.使用 Markdown(或其他渲染引擎)解析…
背景: 公司领导决定将各种基础数据的导入从代码中分离出来,用Apache Nifi替换.使开发者们更关注在业务上,而不用关心基础的由来. Apache Nifi对于整个团队都是一个全新的工具,之前大家都没有接触过,甚至是第一次听说,我就是其中之一.但是很幸运的是,领导指派我去熟悉这个工具,按实际应用场制作DEMO,并分享给团队. 环境准备 windows: 1.下载nifi zip包:https://nifi.apache.org/download.html ,选择自己想要的版本. 注意:1.1…
上一篇我们搭建好了nifi的运行环境了 但是每次登陆那一串随机字符串的用户名和密码是不是让人很头疼,那是人类能记住的吗?当然不是!!!! 那么今天我们就来消灭这些难看又难记的字符串. windows(10): windows下无法通过/bin/nifi.sh 去修改用户名和密码. nifi 默认用的是PKCS12加密,这种就是通过username 和password去登陆.这里我用jks,这种是通过身份证书登陆. 1.这里需要用到nifi-toolkit,先下载zip包,然后解压到本地. 2.在…
本文章首发于博客园,转载请标明出处 经过前两篇文章(环境篇,身份验证),我们已经有了nifi可以运行的基础,今天就来实现一个案例吧. 假设我们要从ftp上获取一个zip包,里面有两个csv文件,一个是manufacture.csv,一个是brand.csv.然后要把这两个文件导入到sqlserver数据库中.其中brand是manufacture的下一级,但是brand里没有manufacture的主键,必须要通过一些关键字段的匹配来找出它们. 在实现这个场景之前,我们需要认识一下nifi中的几…
作者简介 Jimmy Guerrero,在开发者关系团队和开源社区拥有20多年的经验.他目前领导YugabyteDB的社区和市场团队. 本文来自Rancher Labs Longhorn是Kubernetes的云原生分布式块存储,易于部署和升级,100%开源且持久,由业界采用最为广泛的Kubernetes管理平台创建者Rancher Labs推出,并于去年10月捐献给CNCF.Longhorn的内置增量快照和备份功能可确保volume数据的安全,而其直观的UI可以方便地管理持久卷的计划备份.使用…
先看再点赞,给自己一点思考的时间,微信搜索[沉默王二]关注这个靠才华苟且的程序员.本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题,以及我的系列文章. 前几天,看到一位朋友程序员小浩在文章里分享他的开源项目,上了 GitHub 的趋势日榜单,并且成功排名第一.我表示很酸,因为我也想有一个上千 star 的开源项目,到时候就可以肆无忌惮地吹牛逼了. 对于优秀的程序员来说,搜索引擎就该用 Google,找开源项目就该用 GitHub,找答案就该用 St…
[Go语言入门系列]前面的文章: [Go语言入门系列](七)如何使用Go的方法? [Go语言入门系列](八)Go语言是不是面向对象语言? [Go语言入门系列](九)写这些就是为了搞懂怎么用接口 本篇文章介绍Go的环境安装和VSCode的配置使用. 所需环境: Windows 10 Go语言安装包 VSCode安装包 1. Go语言环境安装 进入Golang官网,进入下载页面. 如果打不开可访问Golang中国:https://golang.google.cn Golang中文版:https://…
大数据简介,概念部分 概念部分,建议之前没有任何大数据相关知识的朋友阅读 大数据概论 什么是大数据 大数据(Big Data)是指无法在一定时间范围内用常规软件工具进行捕捉.管理和处理的数据集合,是需要新处理模式才能具有更强的决策力.洞察发现力和流程优化能力的海量.高增长率和多样化的信息资产 粗略解读以下 常规软件工具:例如 JavaEE.Mysql(500-1000w数据)即使构建 Mysql 集群,集群中节点的数量也不是无限增加的. 海量.高增长率:数据本身基数大,每天新加入的数据也多 多样…
你是否曾经想尝试使用K3s的高可用模式?但是苦于没有3个"备用节点",或者没有设置相同数量的虚拟机所需的时间?那么k3d这个方案也许你十分需要噢! 如果你对k3d尚不了解,它的名字或许可以给你一个了解它的切入口:K3s in Docker.k3d是一个轻量级封装程序,用于在Docker中运行k3s.借助k3d,可以轻松在Docker内创建单节点或多节点的k3s集群,用于Kubernetes上的本地开发. K3d允许你在短时间内启动k3s集群.此外,你可以快速学会其少量但十分有用的命令.…
本文基于 Windows 环境开发,适合 Python 新手 本文作者:HelloGitHub-Anthony HelloGitHub 推出的<讲解开源项目>系列,本期介绍 Python 练手级项目--贪吃蛇! 原本想推荐一个贪吃蛇的开源项目:python-console-snake,但由于该项目最近一次更新是 8 年前,而且在运行的时候出现了诸多问题.索性我就动手用 Python 重新写了一个贪吃蛇游戏. 项目地址:https://github.com/AnthonySun256/easy_…
很多刚入门的同学,不清楚如何用java.swing去开发出一个系统? 不清楚如何使用java代码去操作数据库进行增删改查一些列操作,不清楚java代码和数据库(mysql.sqlserver)之间怎么联系起来. 一个系统本质上就是一系列的模块组合起来的,只要懂了一个模块的实现,其他的自然而然的也就不难. 今天,我们通过做一个学生管理的一个通俗模块,去给大家演示如何用java+swing+mysql去实现一个学生管理的曾删改查. 1.前期准备工作,开发工具安装,主要包括如下开发工具: jdk,ja…
您可以在墨抒颖的网站体验本文章的纯净版 准备 拥有一个可以接受信息的邮箱即可 开始 点击github官网github step1.进入注册页面 点击Sign Up进入注册流程 step2.输入邮箱 这个时候会浮现出一些文字,等到出现这个界面的时候就输入您的邮箱地址. 记住每次输入完内容后,点击一下Continue或者旁边的背景确保github给出提示 如果您一切正常的话,您会看到Continue亮起,点击它!进入到下一步. 但如果您出现这个提示,不要慌,这表示您其实拥有github账户,尝试找找…
本教程适用范围 在AWS上使用EKS服务部署k8s Dashboard,并通过ALB访问 EKS集群计算节点采用托管EC2,并使用启动模板. 使用AWS海外账号,us-west-2区域 使用账号默认vpc(172.31.0.0/16)和子网 使用awscli创建而不是eksctl 对AWS有一定了解,不适用于AWS小白 文中代码,汉字部分需要修改成自己的信息 涉及到知识点 AWS服务:EC2,IAM,EKS,VPC,ACM,ALB,SecurityGroup, awscli, eksctl K8…
系列文章目录 第一章:武装飞船 01:创建Pygame窗口以及响应用户输入 02:创建设置类Setting() 一.前期准备 1.语言版本 Python3.9.0 2.编译器 Pycharm2022 3.下载Pygame 点击下方链接查看B站下载教程 如何在 Windows 给 Python 安装 Pygame 模块(含Pycharm安装模块方法) 1.点击文件后找到设置并点击 2.找到项目:下的Python解释器并点击 3.点击+号搜索pygame并安装软件包 二.代码及演示 1.创建Pyga…
书接上文 上篇文章「MySQL 可重复读,差点就让我背上了一个 P0 事故!」发布之后,收到很多小伙伴们的留言,从中又学习到很多,总结一下. 上篇文章可能举得例子有点不恰当,导致有些小伙伴没看懂为什么余额会变负. 这次我们举得实际一点,还是上篇文章 account 表,假设 id=1,balance=1000,不过这次我们扣款 1000,两个事务的时序图如下: 这次使用两个命令窗口真实执行一把: 注意事务 2,③处查询到 id=1,balance=1000,但是实际上由于此时事务 1 已经提交,…
本文介绍使用VMware虚拟化平台部署OpenWrt/HomeLede,并扩容固件硬盘的方法. 推荐使用虚拟化方式部署软路由,理由如下: 部署.升级.回退.扩容等操作非常方便,特别适合折腾 可以方便的调整网络结构(个人不建议直通,直通可能会带来的一点性能优势,但丧失了灵活性) 本文使用的软件情况: VMware Esxi 7.0(6.7亦可) VMware Workstation 15.5 pro Windows 10 HomeLede(基于家庭场景定制的软路由固件,如需了解请见 https:/…
在SQL中有一类函数叫做聚合函数,例如sum().avg().max()等等,这类函数可以将多行数据按照规则聚集为一行,一般来讲聚集后的行数是要少于聚集前的行数的.但是有时我们想要既显示聚集前的数据,又要显示聚集后的数据,这时我们便引入了窗口函数.窗口函数又叫OLAP函数/分析函数,窗口函数兼具分组和排序功能. 本文分为两部分: 第一部分是Hive窗口函数详解,剖析各种窗口函数(几乎涵盖Hive所有的窗口函数): 第二部分是窗口函数实际应用,这部分总共有五个例子,都是工作常用.面试必问的非常经典…
本文用来实现在同一局域网内的两台计算机之间的相互通信,实现一台计算机登录到另一台计算机,本文基于SSH来实现. 1.SSH简介 Secure Shell(SSH)是由 IETF(The Internet Engineering Task Force) 制定的建立在应用层基础上的安全网络协议.它是专为远程登录会话(甚至可以用Windows远程登录Linux服务器进行文件互传)和其他网络服务提供安全性的协议,可有效弥补网络中的漏洞.通过SSH,可以把所有传输的数据进行加密,也能够防止DNS欺骗和IP…
本文目录: 一.消息队列 Apache Pulsar Pulsar 与 Kafka 对比 二.Kafka基础 三.Kafka架构及组件 四.Kafka集群操作 五.Kafka的JavaAPI操作 六.Kafka中的数据不丢失机制 七.Kafka配置文件说明 八.CAP理论 九.Kafka中的CAP机制 十.Kafka监控及运维 十一.Kafka大厂面试题 Kafka 涉及的知识点如下图所示,本文将逐一讲解: 本文档参考了关于 Kafka 的官网及其他众多资料整理而成,为了整洁的排版及舒适的阅读,…
首先感谢师兄的博客!前半部分按照这个照做没有问题! https://www.bilibili.com/read/cv9162965/ 第一步:下载CUDA 在官网下载,查询自己的GPU型号对应的CUDA版本 980Ti对应的是CUDA 10.2 debug:CUDA 10.2不能用tensorflow 重新完整卸载CUDA sudo apt-get --purge remove "*cublas*" "cuda*" sudo apt-get --purge remo…
最近在写NodeJS相关的项目,运行在docker容器中,也是想研究一下断点调试,于是查阅相关资料,最终顺利配置好了. 首先我选择了VsCode作为ide,并用VsCode来做NodeJS可视化debug的工作. 由于VsCode 已将调试工具内置,所以只需要增加调试配置.应遵循以下步骤: 第一步:单击首选项 -> 设置,打开设置选项卡.如下面的屏幕截图. 第二步:在搜索输入中搜索"node debug",你会看到Debug> JavaScript:Auto Attach…
概述 MybatisPlus是国产的第三方插件, 它封装了许多常用的CURDapi,免去了我们写mapper.xml的重复劳动,这里介绍了基本的整合SpringBoot和基础用法. 引入依赖 在项目中pom文件引入mybatisplus和mysql驱动依赖,如下图 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId&…
最近在学习 <linux Kernel Development>,本书用的linux kernel 是v2.6 版本的.看完"系统调用"一节后,想尝试添加一个系统调用,然后重编一个kernel.经过几个小时的尝试,实现了这个小功能,其中也遇到了不少坑,本文主要是记录分享下如何在Linux Kernel (V5.17.7) 中添加一个系统调用(System call). 编kernel之前需要注意: 1.修改的kernel是目前最新的release 版本(V5.17.7),…
配置文件设置 set number (设置行号) set nocompatible (设置不兼容vi模式,不设置会导致许多vim特性被禁用) set clipboard=unnamed (设置普通的复制粘贴的内容和vim复制的内容相互使用) 打开.编辑,查找文件 vim + 任意文件名,如vim file.txt, 直接编辑文件, 不存在则创建文件 已经打开了vim的情况,使用:edit + 文件名编辑其他文件, :edit file.txt :edit *.txt<tab> 查找当前目录以t…
系列文章目录 第一章:武装飞船 07调整飞船速度 08限制飞船活动范围 一.代码及演示 1.修改settings 修改文件:settings.py 点击查看代码 #渗透小红帽python的学习之路 #外星人入侵小游戏 #创建设置类Setting() #存储外星人入侵小游戏的所有设置的类 class Setting(): def __init__(self): #__init__ 注意是两个短下划线 # 屏幕设置 self.screen_width = 1200 self.screen_heigh…