Pure Soul

未分类

一致性Hash算法及python实现

普通Hash算法 我们在实现服务器负载均衡时候可供选择的负载均衡的算法有很多,包括: 轮循算法(Round Robin)、哈希算法(HASH)、最少连接算法(Least Connection)、响应速度算法(Response Time)、加权法(Weighted )等。其中哈希算法是最为常用的算法. 典型的应用场景是: 有N台服务器提供缓存服务,需要对服务器进行负载均衡,将请求平均分发到每台服务器上,每台机器负责1/N的服务。 分配的的原则就是,通过计算请求的hash值来决定请求由哪一台服务器来服务serverID…

2021年4月11日 0条评论 1647点热度 0人点赞 ycq 阅读全文
socket

socket的粘包以及拆包的解决办法

粘包与半包是什么 粘包:顾名思义,就是原本属于两个包的消息被合并在一起了 半包:字面意思,原本是一个包内的消息被拆分成为两个包 为什么会有粘包与半包 出现粘包和半包的首要原因就是TCP是以数据流在网络当中传输的,而“流”是没有明显的收尾区别的,因此在接收的时候也无法区分哪里是数据包的头哪里是尾。 - 粘包产生的两种原因: 1. 每次发送方发送的数据小于socket缓冲区的大小,频繁的发送会被TCP优化算法合并成一个包 2. 接收端接收不及时,使得下一次接收到的包还是上一次遗留的 - 半包产生的两种原因: 1. 发送…

2021年3月17日 0条评论 1376点热度 1人点赞 ycq 阅读全文
未分类

实习秋招的面经篇-鹅厂

最近参加了鹅厂的实习面试,总结一下问题和答案如下: 最近的鹅厂的一面经历如下: - 1)自我介绍 这个环节是每个公司每一轮面试都会有的,一般是三五分钟,突出自己的重点和亮点就行。 - 1.1)问了问是什么类型的硕士,以及什么时间可以去实习 - 1.2)问了在本科和研究生阶段做过的认为最大项目(这一关如果卡住的话非常的尴尬) 2)问了熟悉的语言,然后开始做题: 2.1) 第一题: 输入一个日志文件(sysbench log)、每一秒动态更新,编写函数,当有连续3条日志tps值小于整个tps均值80%打印err信息 […

2021年3月8日 0条评论 887点热度 0人点赞 ycq 阅读全文
未分类

并查集-LeetCode无向图寻找闭环

并查集适用来高效地处理不相交集合(disjoint sets)的合并及查询问题。尤其是出现判断数据的相交情况时,尤其的高效。例如LeetCode的684题:无向图寻找闭环。原题如下: 在本问题中, 树指的是一个连通且无环的无向图。 输入一个图,该图由一个有着N个节点 (节点值不重复1, 2, ..., N) 的树及一条附加的边构成。 附加的边的两个顶点包含在1到N中间,这条附加的边不属于树中已存在的边。 结果图是一个以边组成的二维数组。每一个边的元素是一对[u, v],满足u < v,表示连接顶点u和v的无向…

2021年1月13日 0条评论 1112点热度 0人点赞 ycq 阅读全文
flask

Flask代码结构组织

如果Flask代码结构组织如下: flaskProject:. │ config.py │ my.sqlite │ README.md │ ├─.idea │ │ .gitignore │ │ XXX.xml # pycharm/idea的控制文件 │ ├─app │ │ routes.py # 路由视图函数 │ │ __init__.py │ │ │ └─__pycache__ │ routes.cpython-37.pyc │ __init__.cpython-37.pyc │ ├─static ├─templ…

2020年12月30日 0条评论 793点热度 1人点赞 ycq 阅读全文
未分类

LeetCode-买卖股票的最佳时机

买卖股票的最佳时机是经典的动态规划问题,即使它有一些取巧的办法(这些“办法”也是DP做法的优化版本)。 简单版本 简单版本:给定一个数组,它的第i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。 注意:你不能在买入股票前卖出股票。 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润…

2020年12月28日 0条评论 1205点热度 1人点赞 ycq 阅读全文
未分类

RTX3090+Ubuntu 18.04+tensorflow 2.3.0/2.4.0安装指南

近期实验室新购买一台服务器,配备了全新的3块RTX3090显卡。由于需要安装全新的显卡驱动以及CUDA,cuDNN才能正常使用。 使用watch -n 1 nvidia-smi可以时时实时查看所有显卡的使用情况,并且可以查看驱动版本以及需要的CUDA版本,如下所示:驱动版本是455.38,需要的CUDA为11.1版本(这是我已经安装好了驱动的情况下显示的),如果你的驱动版本过低或者没有安装驱动,那么请参考其他的文章进行安装。 另外,建议使用Anaconda进行环境管理,不容导致整体包环境错乱。 安装Tensorfl…

2020年12月17日 0条评论 2371点热度 0人点赞 ycq 阅读全文
算法

Tensorforce两三语

前言 关于tensorforce的背景可以从他的名字看出来,tensor*必然是师从tensorflow框架的,事实上也确实是由tensorflow框架来的。使用tensorforce可以快速的构建强化学习代码,同时还可以利用其中现有的强化学习框架,例如常见的AC,A2C,A3C,PPO等。并且可以很好地结合OpenAIGym等主流开源环境和框架。 tensorforce的要点 tensorforce的要点,或者说强化学习的要点大致可以分为两大部分,一是环境(Environment),二是代理(Agent)。 En…

2020年10月30日 0条评论 1418点热度 1人点赞 ycq 阅读全文
算法

列表推导式和[]*N的区别

列表推导式是常见的生成方式,同时[]*N也是快速生成多种元素的快捷方式。 例如以下两种生成方式: a=[[0]*5]*5 b=[[0 for _ in range(5)] for _ in range(5)] 生成的初始矩阵都是5*5的0矩阵: [ [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0] ] 但是真正对其中的元素进行赋值之后就会发现问题: a[0][0]=2 b[0][0]=2 # a的输…

2020年10月19日 0条评论 1614点热度 2人点赞 ycq 阅读全文
算法

关于实现keras.Model时,trainable_weights为空的解决办法

在搭建自己的Model的时候,我们有时候需要自己从稍微低层的部分进行搭建,而不是直接用Sequential搭建模型,或者是使用Model(inputs,outputs)的方式搭建,例如下面这个简单的例子: # from tensorflow.python import keras # from tensorflow.keras.layers import Dense,Input # 直接使用keras或者是从tensorflow当中导入keras,两种方式二选一 import keras from keras.la…

2020年10月6日 0条评论 1434点热度 0人点赞 ycq 阅读全文
12345

COPYRIGHT © 2021 oo2ee.com. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS