- 博客(27)
- 收藏
- 关注
原创 上传代码至github仓库
让本地可以登录git仓库ssh-keygen -t rsa -C "Github邮箱"将id_rsa.pub复制至github的SSH Keys:本地同步代码至github仓库(push时注意仓库的分支)git clone git://github.com/...选SSH的方式clone仓库,HTTP方式上传代码时可能报错:fatal: unable to access 'https://github.com/...': GnuTLS recv error (-54)..
2022-04-17 11:00:37 546
原创 MIT 6.824-Lab 2 学习记录
Lab 2A: Leader ElectionTips2A主要要完成的任务:实现初始化Raft实例,核心就在于完成超时选举以及心跳通知。ticker函数用于选举计时,一旦超时就会开始选举。然后关于定时发送心跳的函数都需要自己写。完成选举函数,需要发送RequestVote RPC,对这个RPC进行处理:根据自己实现的投票条件决定是否投票。若candidate竞选失败且未收到新leader的RPC,就会随机等待时间再次选举;若收到新leader的RPC则会变回follower,停止选举;选举成功则要
2022-03-04 18:42:28 2342 1
原创 MIT 6.824-Lab 1 MapReduce
1 前言实验环境配置:https://pdos.csail.mit.edu/6.824/labs/lab-mr.html。这篇笔记主要起到自我学习过程记录的作用,只写了我完成这个实验的大致步骤和遇到问题的解决思路,没有写我的实现思路(其实我的实现思路也很简单,不像很多大佬都做了优化),所以希望看到这篇文章的大佬不要太过严格,但是如果能对其他人提供帮助的话那就更好了。2 阅读代码看一下map函数:// The map function is called once for each file of
2022-01-29 17:17:14 3270 2
原创 网络编程-socket通信(二)
socket通信(二)分包、粘包TCP虽然可以保证顺序不变,但是依然可能会发生分包和粘包的问题:分包:发送一个包”helloworld“,但对方却收到了两个包”hello“和”world“粘包:和分包相反recv()函数参数需要指定接收的字节长度,但是实际开发中是不知道对方发的消息内容有多少个字节,所以一般就是设置为buffer的长度,这就会导致出现粘包和分包的问题解决方法:自定义一份协议规定 报文长度+报文内容:1010helloworld。报文长度采用ascii码(十进制)或者二
2021-12-06 16:55:14 333
原创 网络编程-socket通信(一)
socket通信(一)底层封装了TCP/IP协议簇,开发者只要会用socket即可调用底层协议功能。socket分为以下两种通信机制:stream(流):TCP,基于连接,有序可靠datagram(数据包):UDP,不建立连接,不可靠,效率比较高现在用UDP的场景越来越少了,目前实时音视频聊天会用UDP数据包传输。下图是socket通信流程:程序概要socket文件描述符sockfd = socket(AF_INET,SOCK_STREAM,0),socket()函数的返回值其本
2021-12-04 22:07:37 624
原创 关于Paxos(一)
本文来自知行学社视频:https://www.bilibili.com/video/BV1Lt411m7cW/问题一段数据更新序列:[op1, op2, … , opi],要在所有节点中对这个序列建立共识,确定第i个操作opi是什么。这里将var比作opi,proposer提交var即提交操作。角色:Acceptor:存储管理varProposer:并发调用API,提交不同的varAPI:propose(var,V) ----> <ok, f> or <err
2021-11-28 15:43:07 252
原创 ray(一)_整体架构和任务调度
Ray整体架构本文主要是对Ray Docs做的一点翻译应用概念:Task:进程上执行的单个函数调用。可以是无状态的(function.remote()),也可以是有状态的(Class.remote(),即actor)。Task是通过.remote()调用,是异步执行的,会返回objectRefs(结果数据的引用)。Actor:有状态的worker进程,被@ray.remote()所装饰的类的实例。Driver:根程序,运行ray.init()的程序。Job:同一个Driver内的tasks,
2021-09-14 21:16:00 1022
原创 Bazel
BazelBazel是谷歌推出的项目编译工具installDownload the corresponding .repo file from Fedora COPR and copy it to /etc/yum.repos.d/.wget https://copr.fedorainfracloud.org/coprs/vbatts/bazel/repo/epel-7/vbatts-bazel-epel-7.repomv vbatts-bazel-epel-7.repo /etc/yum.r
2021-09-14 14:18:36 343
原创 关键字、函数和方法区别
关键字:python内置的标识符,使用关键字后面不用加括号# 输出包含所有关键字的列表import keywordprint(keyword.kwlist)函数:封装了独立的功能,直接调用:函数名(参数),比如print()方法:与函数类似,但需要对象调用...
2021-08-18 09:58:01 268
原创 机器学习(1)机器学习定义(神经网络)
机器学习(1)1 定义让计算机找到一个函数(程序员很难自主编写),用于解决人们的问题。1.1 不同函数类别Regression(回归):输出是一个数值的函数Classification(分类):给定类别,函数会输出正确的一类。比如侦测邮件是否为垃圾邮件。除了以上常见的两类,还有Structured Learning(产生有结构的输出,比如图像,文本)。1.2 视频流量预测函数举例输入参数为前面几天的账号流量信息(如每天视频播放量,点赞人数等),输出明天的流量信息。步骤:写出带有未
2021-08-12 08:43:46 283
原创 Cassandra初步学习和性能测试
1、cassandra安装下载并解压tar -xzvf apache-cassandra-3.11.10-bin.tar.gz -C /usr/local/创建三个存放数据的文件夹[root@hadoop102 cassandra-3.11.10]# mkdir data[root@hadoop102 cassandra-3.11.10]# mkdir commitlog[root@hadoop102 cassandra-3.11.10]# mkdir saved_cachesco
2021-07-20 16:56:15 1776
原创 HBase初步学习与性能测试
HBase初步学习1、HBase定义HBase(Hadoop Database)是一个分布式、可扩展的NoSQL数据库。基于Big Table,为Hadoop框架当中的结构化数据提供存储服务,是面向列的分布式数据库。这一点与HDFS是不一样的,HDFS是分布式文件系统,管理的是存放在多个硬盘上的数据文件,不支持随机修改,而Hbase管理的是类似于key—value映射的表。2、HBase数据模型Name space:关系型数据库中表放在database中,而Hbase的表放在命名空间中,自带的命名
2021-07-09 18:12:32 1678 1
原创 Hadoop(1.7)——常见面试题
常用端口号:Hadoop 3.XHDFS:NameNode内部端口:8020/9000/9820NameNode对用户的查询端口:9870Yarn查看任务运行情况端口:8088历史服务器:19888Hadoop 2.XHDFS:NameNode内部端口:8020/9000NameNode对用户的查询端口:50070Yarn查看任务运行情况端口:8088历史服务器:19888常用配置文件:Hadoop 3.X:core-site.xml hdfs-sit
2021-06-26 09:25:34 90 2
原创 Hadoop(1.6)——批量启动服务脚本、批量查看jps脚本
批量启动服务脚本:脚本存放路径:/root/bin脚本内容:#!/bin/bash if [ $# -lt 1 ] then echo "No Args Input..." exit ; fi case $1 in "start") echo " =================== 启动 hadoop 集群 ===================" echo " --------------- 启动 hdfs -----
2021-06-26 08:57:40 316
原创 Hadoop(1.5)——配置历史服务器
配置历史服务器配置mapred.xml在该文件下增加如下配置: <!--历史服务器地址端口(节点之间用)--> <property> <name>mapreduce.jobhistory.address</name> <value>hadoop102:10020</value> </property> <!--历史服务器地址端口(用户浏览器通过该端口访问)--&
2021-05-18 19:08:25 493
原创 Hadoop(1.4)——群起集群
1. 配置workers几台主机配置几个worker。先切换到$HADOOP_HOME/etc/hadoop/文件夹,编辑其内部的workers文件。[root@hadoop102 hadoop]# cat workershadoop102hadoop103hadoop104再使用xsync workers将workers文件分发至其他主机。2. 启动集群集群第一次启动:在102节点格式化NameNode,初始化完毕后,会在hadoop_home目录下产生data、logs文件夹[
2021-05-18 10:03:21 377
原创 Hadoop(1.3)——集群配置
1、集群部署规划注意:NameNode、SecondaryNameNode不要安装在同一服务器ResourceManager很消耗内存,不要和NameNode、SecondaryNameNode配置在一起HDFS:NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性,以及每个文件的块列表和块所在的DateNode等DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和Secondary NameNode(2nn):每隔一段时间对NameNode元
2021-05-16 16:54:30 104
原创 Hadoop(1.2)——ssh免密登录
102主机曾经通过ssh连接过其他主机,所以在home下有个.ssh文件夹,内部有known_hosts文件,记录连接主机的信息。在.ssh文件夹下使用命令ssh-keygen -t rsa 创建密钥对在.ssh文件夹下生成文件:[root@hadoop102 .ssh]# ll总用量 12-rw-------. 1 root root 1675 5月 16 09:47 id_rsa #私钥-rw-r--r--. 1 root root 396 5月 16 09:47 id_rsa..
2021-05-16 10:43:42 94
原创 Hadoop(1.1)——xsync集群分发脚本
Hadoop运行模式:Local Mode本地模式,数据存储在linux本地,测试时偶尔用Psedo-Distributed Mode伪分布式模式:数据存储在HDFS,适用预算有限的情况Fully-Distributed Mode完全分布式,数据存储在HDFS/多台服务器工作,企业大量用这个完全分布式运行模式的搭建步骤:准备3台客户机(关闭防火墙、静态ip、主机名称)安装JDK,配置环境变量安装Hadoop,配置环境变量配置集群单点启动配置
2021-05-16 09:20:10 394
原创 一致性哈希算法简单理解
一致性哈希算法简单理解现有问题假设一张图片要存储到三台服务器(S0、S1、S2)上,根据哈希算法,这里假设用图片的的名称用固定的哈希算法得到哈希值,对机器数取余,得到的值就是要存储的服务器的编号。这种方案在不添加服务器时不会产生问题,但是对服务器进行扩容之后,假设机器数变成了4,再用原始的哈希算法就无法得到一张图片的真正存储服务器的编号。这会造成所有的缓存都失效,引起缓存雪崩。解决办法一致性哈希算法:引进哈希环的概念,该环上有2^32(哈希值是int型)个节点。对服务器编号进行哈希,再对2
2021-05-09 10:27:39 128
原创 393分上岸南昌大学信息工程学院软件工程专硕
393分上岸南昌大学信息工程学院软件工程专硕前言lz是2021考研南昌大学电子信息软件工程方向,初试成绩393分:数学二 133分,408 114分,英语二 80分,政治 66分。本来没想到写的,结果发现问经验的同学还挺多的,所以特来发经验贴以供参考(水平有限,见谅=_=)。这个经验贴主要是给双非、三本同学参考的,基础强的大佬可以绕道了。先介绍一下我的考前基本情况:CET6 452分;数学全忘了;专业课期末考试80分的水平;政治全忘了。下面两个图是我用番茄todo记录的学习时长情况。上半年没怎么努力
2021-05-05 10:05:41 2767 4
原创 前端同时传入多个文件和文本
前端传入多个文件和文本我现在在做发送邮件的前端界面,所以需要实现上传自定义个数的附件和文本的功能。写一篇博文记录遇到的问题。1、前端传参<form id="writeMailForm" style="margin-top: 15px" enctype="multipart/form-data" method="post"> <table width="100%"> <tbody>
2021-04-12 15:17:37 1449
原创 混合使用@RequestBody()和@RequestParam()
混合使用@RequestBody()和@RequestParam(“mailNum”)RequestParam参数放在前端ajax的url后用?连接,RequestBody参数则是正常放在data中以json字符串形式传 var user = eval("("+sessionStorage.getItem("user")+")"); $.ajax({ url: "${pageContext.request.contextPath}/user/get
2021-03-11 22:19:43 346 1
原创 使用vagrant创建linux虚拟机
安装virtualBoxhttps://www.virtualbox.org/安装vagranthttps://www.vagrantup.com/downloadscmd 利用vagrant创建centos7虚拟环境cmd命令:vagrant init centos/7启动虚拟容器:vagrant upvagrant默认创建了SSH连接:default: SSH address: 127.0.0.1:2222default: SSH username: vagrantdefault.
2021-02-24 15:16:50 122
原创 记一次前端传入对象的问题
记一次前端传入对象的问题后端使用@RequestBody接收 /** * 用户自主修改密码(前端自己修改session,后端只是负责传入数据库,不会再返回session) * @param user * @return */ @RequestMapping("updatePassword") @ResponseBody public HashMap<String,Object> updatePassword(@Reques
2021-02-23 20:41:21 194
原创 SpringMVC
SpringMVCSSM:spring + springMVC + mybatismvc:模型(dao,service)识图(jsp) 控制器(Servlet)1、搭建环境新建普通maven项目,删除src使它变成父项目。导入依赖 <dependencies> <dependency> <groupId>junit</groupId> <artifactId>jun
2021-01-26 10:05:06 122
原创 IDEA连接MySql时区问题
IDEA连接MySql时区问题管理员启动cmd,登录mysql,设置时区:set global time_zone='+8:00';//设置时区show variables like'%time_zone';//查看时区IDEA中在mysql advanced设置 server timezone 为Asia/Shanghai ,但是设置一直不能成功,未找到原因...
2021-01-21 21:26:33 343
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人