avatar
怎么设计这个client# Programming - 葵花宝典
r*n
1
现在网红这两字严格的说是一种贬义词,是一种极度恶心的贬义词,时代变了,网红从
当年无心插柳的行为,变成了一种盈利谋生的手段,一个网红一年几十万几百万的收入
,让人们都失去了理智和底线,想尽一切办法让自己变成网红
也是,这个时代只要你能在网络上出名了,不管你用的什么手段,不管你成名的方式是
多么的恶心,多么的恶略,做了多么伤天害理的事,这都不重要,过程都不重要,你只
要在意结果就可以了,所以今天的网红,是最没有底线和最不要脸的一代
越是这样,越是让人觉得当年的网红们,是多么的纯洁和可爱,最早的网红,我心里最
早的网红应该是那个被人ps无数次的网络小胖了,当时真的惊人天人,看一次笑一次的
笑的不行
后舍男生,是后来的吧,两个男孩对口型唱歌,一下子就火的一塌糊涂,那真的不是炒
作,那真的是无意为之的事情,不过后来这两个小子也因为这个赚到钱了
芙蓉姐姐,这个人之后,所有的人都意识到网红能赚钱了,所以说芙蓉姐姐和后舍男生
是真网红和加网红额一个重要分界线
avatar
l*n
2
C++需要设计一个client,这个client先向server发送request,server会把一套复杂的
data format给client,然后client让server开始发送数据,client收到数据然后开始
处理。
过程中需要对收到的数据做检验,也就是通过把client收到的数据写到文
件里边。这个怎么实现?现在想到的就是fork一下
比如我有个这样的service在run,现在我需要有功能
service 1481306473 > data_1481306473
这样就把1481306473时候接收的数据写到文件
avatar
g*u
3
"通过命令把client收到命令收到的数据"
这是什么鬼?

【在 l******n 的大作中提到】
: C++需要设计一个client,这个client先向server发送request,server会把一套复杂的
: data format给client,然后client让server开始发送数据,client收到数据然后开始
: 处理。
: 过程中需要对收到的数据做检验,也就是通过把client收到的数据写到文
: 件里边。这个怎么实现?现在想到的就是fork一下
: 比如我有个这样的service在run,现在我需要有功能
: service 1481306473 > data_1481306473
: 这样就把1481306473时候接收的数据写到文件

avatar
b*s
4
我感觉这个有点象jaxb xsd的一套,xsd定义数据结构,jaxb做marshall, unmashall
avatar
c*3
5
这和http或者ftp客户端发送和接受一个文件本质是一样的,数据就是文件,是二进制
的罢了

【在 l******n 的大作中提到】
: C++需要设计一个client,这个client先向server发送request,server会把一套复杂的
: data format给client,然后client让server开始发送数据,client收到数据然后开始
: 处理。
: 过程中需要对收到的数据做检验,也就是通过把client收到的数据写到文
: 件里边。这个怎么实现?现在想到的就是fork一下
: 比如我有个这样的service在run,现在我需要有功能
: service 1481306473 > data_1481306473
: 这样就把1481306473时候接收的数据写到文件

avatar
g*t
6
收发email可以吗?把你的client server前面都加个email,就清楚了吧?
应该有现成的收发email处理的库吧

【在 l******n 的大作中提到】
: C++需要设计一个client,这个client先向server发送request,server会把一套复杂的
: data format给client,然后client让server开始发送数据,client收到数据然后开始
: 处理。
: 过程中需要对收到的数据做检验,也就是通过把client收到的数据写到文
: 件里边。这个怎么实现?现在想到的就是fork一下
: 比如我有个这样的service在run,现在我需要有功能
: service 1481306473 > data_1481306473
: 这样就把1481306473时候接收的数据写到文件

avatar
g*t
7
In many cases, I think email is THE ONLY best way for files/data auto
transfer and processing.
(1)
All company already have a solid email server system.
(2)
ftp/ http 会跟公司防火墙乱搞,corner cases 处理不完。
我们公司的http政策,多年积累下来,已经无法理清了

【在 c****3 的大作中提到】
: 这和http或者ftp客户端发送和接受一个文件本质是一样的,数据就是文件,是二进制
: 的罢了

avatar
c*3
8
现在还有SFTP,就是SSH上的文件传输协议,只要开一个端口22就够了,防火墙友好。
可以传文件和目录,不像http没法传多个文件

【在 g****t 的大作中提到】
: In many cases, I think email is THE ONLY best way for files/data auto
: transfer and processing.
: (1)
: All company already have a solid email server system.
: (2)
: ftp/ http 会跟公司防火墙乱搞,corner cases 处理不完。
: 我们公司的http政策,多年积累下来,已经无法理清了

avatar
l*n
9
我这个client直接把data dump到kafka,本身不保存任何的数据

【在 c****3 的大作中提到】
: 这和http或者ftp客户端发送和接受一个文件本质是一样的,数据就是文件,是二进制
: 的罢了

avatar
c*3
10
脑子别那么死,临时文件删了,不就是不保存数据。
你的要求,其实和各种文件传输协议是一样的。

【在 l******n 的大作中提到】
: 我这个client直接把data dump到kafka,本身不保存任何的数据
avatar
j*g
11
如果用C++,性能要求不高的情况下,fork + socket,定时flush一下。
我猜测你是想要先协议出数据格式,然后再存。如果数据格式不是标准的,要转换成标
准格式。
python是不是更有好些,轮子也多。
avatar
l*n
12
嗯,是这样的
麻烦的数据格式在传输中会发生改变,所以得到的数据可能会是junk
现在想监控一下,避免这种情况发生

【在 j********g 的大作中提到】
: 如果用C++,性能要求不高的情况下,fork + socket,定时flush一下。
: 我猜测你是想要先协议出数据格式,然后再存。如果数据格式不是标准的,要转换成标
: 准格式。
: python是不是更有好些,轮子也多。

avatar
c*3
13
用加密文件传输协议,这些协议都设计有数据校验的,自己搞这些多麻烦,你得自己设
计一套迷你文件传输协议

【在 l******n 的大作中提到】
: 嗯,是这样的
: 麻烦的数据格式在传输中会发生改变,所以得到的数据可能会是junk
: 现在想监控一下,避免这种情况发生

avatar
S*s
14
you should ask server to send AVRO if it's expected schema evolution
this doesn't look very complicated once you solve data de/serialization
typical kafka data pipeline

【在 l******n 的大作中提到】
: 嗯,是这样的
: 麻烦的数据格式在传输中会发生改变,所以得到的数据可能会是junk
: 现在想监控一下,避免这种情况发生

avatar
l*n
15
关键是不知道什么时候数据会发生改变,难道要不停的request data format然后再
decode?这样效率很低下。否则就只有一个client专门接收data format,收到新的数据
格式,然后传给另外一个只接受数据的client使用。

【在 S***s 的大作中提到】
: you should ask server to send AVRO if it's expected schema evolution
: this doesn't look very complicated once you solve data de/serialization
: typical kafka data pipeline

avatar
l*n
16
protocol是直接用的IEEE的定义好的,也有crc,加密现在不考虑。

【在 c****3 的大作中提到】
: 用加密文件传输协议,这些协议都设计有数据校验的,自己搞这些多麻烦,你得自己设
: 计一套迷你文件传输协议

avatar
c*3
17
你自己得说清楚,数据改变是传输引起的,还是什么其它引起的。
传输引起的,CRC如果不够,加密协议设计就是为了防止中间人改数据,有校验的,更
可靠。
你自己搞,还得远端传原始校验数据,否则你怎么知道数据改了,这就是迷你传输协议

【在 l******n 的大作中提到】
: protocol是直接用的IEEE的定义好的,也有crc,加密现在不考虑。
avatar
l*n
18
是数据源的变动造成的

【在 c****3 的大作中提到】
: 你自己得说清楚,数据改变是传输引起的,还是什么其它引起的。
: 传输引起的,CRC如果不够,加密协议设计就是为了防止中间人改数据,有校验的,更
: 可靠。
: 你自己搞,还得远端传原始校验数据,否则你怎么知道数据改了,这就是迷你传输协议

avatar
c*3
19
这种你得自己设计校验协议,传多少数据校验一次,服务器端的校验数据怎么传,是附
在原始数据末端,还是通过另外通道。也根本不用写文件,直接在内存校验就可以。
所谓校验,也不见得是真的校验,就是检查数据类型是不是你想要的

【在 l******n 的大作中提到】
: 是数据源的变动造成的
avatar
S*s
20
AVRO format embed schema used to generate data
so you should have no problem parsing it on receiving end

【在 l******n 的大作中提到】
: 是数据源的变动造成的
avatar
e*o
21
server都把数据format给你了
你要做的就是很根据format 来动态改变你的parser
难点在不再传输 在于你这个format 有多变态
如果太复杂 你就把server给你的format 和数据保存到一起
另一个程序负责来处理数据 处理完成无误删掉 这样万一新format handle不了 你可以
介入手动改parser.

【在 l******n 的大作中提到】
: C++需要设计一个client,这个client先向server发送request,server会把一套复杂的
: data format给client,然后client让server开始发送数据,client收到数据然后开始
: 处理。
: 过程中需要对收到的数据做检验,也就是通过把client收到的数据写到文
: 件里边。这个怎么实现?现在想到的就是fork一下
: 比如我有个这样的service在run,现在我需要有功能
: service 1481306473 > data_1481306473
: 这样就把1481306473时候接收的数据写到文件

avatar
l*n
22
数据是device上产生的,遵守定义好的protocol,没有schema

【在 S***s 的大作中提到】
: AVRO format embed schema used to generate data
: so you should have no problem parsing it on receiving end

avatar
j*g
23
有点儿迷惑了。如果是数据采集就有错了,定义好protocol也没有用呀。CRC这些是防
止传输出错。
难道是device上的软件错误?
avatar
b*i
24
不同这个要求和fork有啥关系呢?

【在 j********g 的大作中提到】
: 如果用C++,性能要求不高的情况下,fork + socket,定时flush一下。
: 我猜测你是想要先协议出数据格式,然后再存。如果数据格式不是标准的,要转换成标
: 准格式。
: python是不是更有好些,轮子也多。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。