V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  ZhaoHuiLiu  ›  全部回复第 3 页 / 共 3 页
回复总数  58
1  2  3  
2021-06-09 09:25:44 +08:00
回复了 ZhaoHuiLiu 创建的主题 求职 [求职]Web 全栈开发
@gacktfly 阿里服务端基本都用 Java 开发的,我学了些游戏服务端才知道,Java 因为并发不高,所以很少用来写游戏服务端。
2021-06-09 09:11:57 +08:00
回复了 ZhaoHuiLiu 创建的主题 求职 [求职]Web 全栈开发
@LiuJiang 我随便找了歌网站上传,没注意到有下载限制,不好意思。并发上万,除了熟练 C++以外,没有任何办法,阿里并发 10 万,用了几千台机器。你们公司买的起几千台服务器吗?
2021-06-09 09:03:13 +08:00
回复了 ZhaoHuiLiu 创建的主题 求职 [求职]Web 全栈开发
@LiuJiang 为什么?
简单给操作系统的 windows 下创建空文件,创建成功就是管理员
2021-05-01 01:10:08 +08:00
回复了 Mr0C 创建的主题 程序员 2021 年为啥还有公司前端使用 SQL 拼接参数
都是拿钱做事,安全这东西,得负责人懂程序,不然大家都是玩玩。。。
2021-05-01 01:08:30 +08:00
回复了 iyg429 创建的主题 游戏 有人对手柄有研究吗?
不缺钱的话,买个 ps5 手柄,我用的 ps4 手柄,在安卓手机上用的很方便,蓝牙连接的。
2021-04-25 19:11:30 +08:00
回复了 quxinna 创建的主题 程序员 CRC-32 查表法真的存在吗?
我建议你看 C 语言,这个 python 语言资料还没 C 语言多,python 也只是个玩具。
我告诉你把,没用的。。。那个路由器发射距离连 20 米都没有,只要有墙隔绝的话连 10 米都困难,你先用手机连接主路由器,连接的上买的路由器就桥接的上,手机连不上就桥接不上。

我建议你买 无线 wifi 电力猫 买两个,一个发射,一个接收,只要靠家里的插座就能传递网络。。。纯粹靠 wifi 桥接压根不靠谱。。。
2021-04-25 17:23:03 +08:00
回复了 quxinna 创建的主题 程序员 CRC-32 查表法真的存在吗?
@quxinna

crc32 默认值就是 0xffffffff 这个值。。。你传递进行去的数据和这个值做运算
2021-04-25 15:31:59 +08:00
回复了 yinggcy 创建的主题 Node.js node.js spawn stdout.on 不会立即传回数据
我帮你查到有用的资料了

python 关闭 stdout 输出缓冲 python -u xxx.py

class Unbuffered(object):
def __init__(self, stream):
self.stream = stream
def write(self, data):
self.stream.write(data)
self.stream.flush()
def __getattr__(self, attr):
return getattr(self.stream, attr)
import sys
sys.stdout = Unbuffered(sys.stdout)
print 'Hello'
2021-04-25 15:28:57 +08:00
回复了 Joker123456789 创建的主题 Java 问几个有关 NIO 的问题
HTTP 多次请求,你要完成数据合并,你得写入一个文件,并且这个文件要记录一些头部信息,当请求完成了,你再读取这个文件进行操作。
2021-04-25 15:27:21 +08:00
回复了 Joker123456789 创建的主题 Java 问几个有关 NIO 的问题
HTTP 是无状态请求的,你两次请求,可能不在一个服务器,你得有一台共用的文件服务器。

分片请求,你得写入一些信息,比如请求的是二进制文件。
你得给这个文件写入一个头部信息,这个头部信息包含:文件名、用户名、文件总大小、已写入大小,请求次数等等固定大小头部信息。

用 fs 打开文件,读取头信息,再写入数据,再更新头信息。
2021-04-25 15:21:20 +08:00
回复了 seagull7558 创建的主题 MySQL 条件跨数据库了 如何分页查询
好像所有数据都提供跨库查询
比如 MySQL 的话,你搜索 MySQL 跨库查询,就有相关资料了。查询方式和普通 select 一样。。。。
2021-04-25 15:13:35 +08:00
回复了 quxinna 创建的主题 程序员 CRC-32 查表法真的存在吗?
@quxinna
var=(crc32_table_normal[operator])^(var<<8)&0xffffffff
crc32_table_normal 数组 operator 变量,var<<8 左边移动 8 位,如果 var 是 32 位,此时左边移动 8 位就是 40 位, (var<<8) & 0xffffffff 这里的 (var<<8) 是 40 位,& 0xffffffff 表示我只要 32 位数据,crc32_table_normal[operator] 查表得到一个 32 位数据,32 位数据进行 ^ 操作得到 32 位数据,此时 var 还是 32 位数据。
crc32_table_normal[operator] 这里的 operator 根据上面的处理,确定为 8 位,也就是 256 最大大小。索引是从 0 开始,所以 operator 最大值为 255 数值。
2021-04-25 15:02:07 +08:00
回复了 UserNameisNull 创建的主题 程序员 朋友遇到一个面试题,微信朋友圈怎么设计?
上面只是说了个大概实现,实际可以进行更详细的拆分,不过拆分越细,整体工程就越复杂,我从简设计的。
2021-04-25 14:59:34 +08:00
回复了 UserNameisNull 创建的主题 程序员 朋友遇到一个面试题,微信朋友圈怎么设计?
假设微信朋友圈的
读 QPS 100w
写 QPS 10w
每个用户最多 400 个朋友,

这里读每秒 100 万此,写每秒 10 万次。
按照要求来算,无论是 SQL 还是 NOSQL 单台机器都完成不了任务。
只能按照分布式方式,把数据拆散储存。

创建一个 users 二进制文件,储存所有用户信息。
创建一个 friends 二进制文件,储存了所有朋友关联信息。
创建一个 user_friends 二进制文件,储存了关联用户和朋友的信息。

此时分布式文件系统储存了以下 3 个文件。
/users.db
/friends.db
/user_friends.db

发朋友圈信息,把数据写到 /message/用户名 /sent.db 这个文件中。
再从 user_friends.db 读取 400 个朋友的用户名,再分别更新文件 /message/用户名 /received.db 文件。
这个读取更新操作是自动完成的,当用户读取朋友圈的时候,会根据上次更新时间来判断是否更新,比如上次更新在 1-3 分钟内,根据负载来判断是否更新,负载很高的情况下,并且上次更新少于 3 分钟就不更新。
如果少于 3 分钟,就立即更新信息。更新方式就是读取 400 个朋友用户名,然后再分别读取 /message/用户名 /sent.db 文件,以当前日期为准读取,比如今天是 2020-1-1 日,就读这一天的,然后聚集 400 个朋友的 2020-1-1 这天的信息,根据时间戳来排序。

由于上面采用的是分布式文件系统储存方式,读写压力完全根据有多少台服务器来判定,所以理论上不存在读写限制。

想完成上面操作,推荐用 C++ 或者 Go 语言,上面需求并不复杂。
2021-04-25 14:08:38 +08:00
回复了 quxinna 创建的主题 程序员 CRC-32 查表法真的存在吗?
@quxinna

var=0xffffffff 这里最大值是 UINT32_MAX
operator=int('{:08b}'.format(operator)[::-1],2) 这里的 {:08b} 是指 8 位二进制,也就是 256 个数
operator=operator^(var>>24) 这里的 var 是 32 位,向右移动 24 位,就剩下 8 位,8 位再和 operator 位进行位运算
crc32_table_normal[operator] 此时的 crc32_table_normal 必然为 256 大小的数组
2021-04-24 17:51:48 +08:00
回复了 quxinna 创建的主题 程序员 CRC-32 查表法真的存在吗?
所有的 CRC 算法都可以生成表来查询。。。。
从 CRC4 到 CRC64 都可以通过表,你可以到 Github 搜索算法就知道了。。。
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1120 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 36ms · UTC 18:12 · PVG 02:12 · LAX 11:12 · JFK 14:12
Developed with CodeLauncher
♥ Do have faith in what you're doing.