由买买提看人间百态

topics

全部话题 - 话题: socket
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
m********0
发帖数: 2717
1
来自主题: Stock版 - 诚心求教automatic trading入门
C++ api of IB is not that easy.
Jave API is much easy to begin.
Nevertheless, I am using it's POSIX C++ API now.
http://www.maxdama.com/?p=347
Based on IB, the test program is sync.
if( m_pClient->fd() >= 0 ) {
FD_ZERO( &readSet);
errorSet = writeSet = readSet;
FD_SET( m_pClient->fd(), &readSet);
if( !m_pClient->isOutBufferEmpty())
FD_SET( m_pClient->fd(), &writeSet);
FD_CLR( m_pClient->fd(), &errorSet);
int ret = select( m_pClient->fd(... 阅读全帖
A***a
发帖数: 1799
2
来自主题: Tennessee版 - 阿修罗请进,问个问题
四缸车很简单,要SPARK PLUG SOCKET跟SOCKET WRENCH.有时会需要个EXTENSION.
这个一下说不清楚啊,简单说就是把线先断开,然后用扳手套上SPARK PLUG SOCKET拧下
SPARK PLUG,换上新的就行了,比换机油还要CLEAN简单.对了,换新的前最好CHECK一下
GAP.
要注意一个一个得换,搞错顺序的话车子开不了,点不着火.
p*********w
发帖数: 606
3
来自主题: WashingtonDC版 - 通讯公司招software engineer
我们公司最近要招聘若干software engineer以及embedded engineer, both mid and
senior level. 公司是一个中型公司,6,700人的规模,总部在herndon, va. 支持h1b
公司中国人很多,我希望能在多refer些中国人到公司来。
有兴趣的请将简历发到[email protected]
/* */
职位说明太长,我下面主要贴职位需要的technical requirement。
===========================================================
这两个职位有若干,both mid level and senior level。是我们组,头是中国人,很
nice
Senior Software Engineer - Software Protcols & Applications
Solid experience with C++ and object oriented design and development.
Strong experien... 阅读全帖
f****a
发帖数: 4708
4
来自主题: GunsAndGears版 - 自制stuck case remover
308的弹壳弄在resizing die里出不来了!
连rim都给扳掉了!
唉...
我记得KY是涂够了的,只是放到枪膛里看一看能不能顶上枪栓,谁知道KY就都没了呢?
一用力,就塞在里面再也拔不出来了。
本来想买RCBS的这个stuck case remover,但还是要等好几天运到,等不及了!
又看了看评测和calguns论坛上的讨论,说是这个rcbs质量不好,就是一个taper而已,
完全可以自制。
材料:
1/4-20 taper 已有
1/4 flat washer 0.7/4
11mm socket 已有
1/4 hex bolt 1.4/2
17/32 drill bit 已有
把die倒置在press上,先给该死的弹壳屁股上钻个5.1mm的洞,爆它的菊花!
再给它的菊花攻丝!
再套上套子 (socket & washer)
再旋上螺钉,够着它的菊花螺纹,上扳手给我掏!
总算给我掏出来了......罪魁祸首就是它!
刑具回顾:
socket and drill bits: 0 cents
don't have to wait for RCBS stuck case remo... 阅读全帖
o*******r
发帖数: 4921
5
来自主题: Running版 - ###此帖已应当事人要求删除###
后来换消炎药了。
当时正好是thanksgiving和black friday,当时觉得可能联系不到牙医。后来还是联系
到他了,换了药。dry sockets太痛了,我宁可浑身起rash都想把dry sockets弄下去。
唉,还好智齿只拔一次。一次4颗全弄完了就拉倒了。我的智齿都很大,所以更惨点。
当时一个插曲是:拔完给我看拔下来的牙,我看到牙上沾着一大块的硬东西,就问,
what's this? 回答:oh, just a piece of bone.当时我就差点昏过去了。。。后来就
是这颗牙出了dry socket.
k****t
发帖数: 12697
6
来自主题: PhotoGear版 - 奔买的东西, 猜中有包子
托AMEX 福,弄了点FREE TOOL.
本地ACE HARDWARE, CHECK OUT 两次. 头一次, $29.99 COAST G45 手电, 50% OFF
COUPON, 加9.99 的CRAPSMAN 大手电刚好$25. 其实俺百多LUMEN 的手电已经4,5 个了.
CRAPSMAN 2D 比较大全金属应当比较好改装, 有空到DEALEXTREME 买个亮点的CREE 换
了它.
第二次CHECKOUT, 200PC DREMEL BITS, $9.99 一套弄了两, 加个3/4" DEEP WELL
SOCKET $3.99, 俺换轮胎以后用不着把SOCKET 在TORQUE WRENCH 和DRIVE 上来回换,
这个3/8 DRIVE 就STAY 在DRIVE 上. 1/2" DRIVE 的IMPACT SOCKET 就STAY 在TORQUE
WRENCH 上.
DREMEL 那200 PIECE 里俺其实就想要一个, 那个一般套装里都没有, 单买也不大见(见
过一次那一个就要是十几刀, 手头那个有点钝了). 猜是哪个(有大图), 猜到包子, 最
多发三个包... 阅读全帖
d***a
发帖数: 13752
7
来自主题: Apple版 - MACPro为什么不上16Core
他问的问题,不知所云。新Mac Pro用的应该是Intel要出的新版Xeon E5,
12-core with DDR3-1866。Intel还有一款新版Xeon E7, 15-core。
不知他哪里听来的16-core Xeon的消息。
http://www.tomshardware.com/news/Intel-Xeon-Ivy-Bridge-EP-Serve
The E5-2600/4600 V2 and E7-8800V2 CPUs have been detailed. The E5-2600 V2
family of CPUs will feature up to 12 cores with Hyperthreading, resulting in
24 threads. They will also carry 30 MB of L3 cache and have quad-channel
DDR3-1866 memory support, per socket. They can also be run in dual-socket
configurations. Th... 阅读全帖
p***b
发帖数: 69
8
小公司,两三个人那种,oracle就是内部自己分析数据用的。
因为已经有不少oracle下面开发的Package了,所以必须用oracle
准备买个oracle standard edition 5 users版本 预算2千美元左右
听说Standard Edition允许4个physical sockets,而不是像enterprise版本那样是用
core来计算的。
请问装在下面四个选项哪个比较好?请指教。谢谢了!
新机器(2 sockets, 16 core,同时有其它程序运行)
旧机器(1 socket, 4 core,基本没有其它程序运行)
新机器下的VirtualBox装linux然后再装oracle?
新机器windows下直接装oracle?
旧机器windows下装oracle?
旧机器重装成linux再安装oracle?
o**f
发帖数: 76
9
来自主题: DotNet版 - Help: DotNet Tcp Client/Server
Hi All,
I am using a TCP server to be a non-blocking
server for n TCP clients (with Socket.Select()).
My problem is the number of n is limited to be < 65
when I bring up those clients one at a time with
10 seconds interval time between two adjacent
clients. Otherwise, the Socket.Select
will throw an "Index was outside the bounds of the
array" exception.
I tried SetSocketOption with MaxConnections
and get an unhandled exception. I also
tried to use different value for socket
Listen(int). It do
s********e
发帖数: 37
10
来自主题: EmergingNetworking版 - 请教高手: 如何写TCP-client program in C++?
客户端的...免费提供...:)
//
// Client Program: socket_c.c
//
#include
#include
#include
#include
#include
#define SOCKET_PORT 6500
int get_socket_connection()
{
struct sockaddr_in sin;
struct hostent *hp;
int s;
hp = gethostbyname("192.168.0.132");
sin.sin_family = AF_INET;
sin.sin_addr.s_addr = ((struct in_addr *)(hp->h_addr))->s_addr;
sin.sin_port = htons(SOCKET_PORT);
if ((s = socket(AF_INET, SOCK_STREAM, 0)) == -1)
{ perror("socket"); e
n**********l
发帖数: 271
11
来自主题: EmergingNetworking版 - Chrome26访问mitbbs问题
看了下wireshark
mitbbs不用cookie, 不回复tcp keepalive, 也不发reset
chrome就总是尝试用existing sockets 于是就不停的tcp retran...
Firefox好像每次都开一个新的socket所以没这个问题, Chrome第一次打开的时候开一
堆socket, 然后用tcp keepalive 过了很久什么都收不到才reset...
我是behind NAT, NAT timer应该比tcp timer长的多吧?
为什么会这样呢?
y*y
发帖数: 427
12
来自主题: Hardware版 - 现有Phenom II X4即将全面退市让路
u guys are too picky
LG775 has supported P4, C2D, C2Q and 45nm Penryn
AMD has 3.5 sockets come and go during the same time. With integrated MC, AMD has to change socket for each gen of DDR DDR2 and DDR3
i7/i5 has integrated MC, how do you expect same LGA775 socket is still usable? even if intel makes it 775 pin, do you expect old/new CPU can work on new/old
motherboard just because of pin count is the same :D ?
i5 and i7 difference is a bit dilema, I guess. My understanding is QPI and
DMI archit
x*****s
发帖数: 952
13
来自主题: Hardware版 - 配置单球鉴定,多谢了
主要是打游戏,大家觉得如何?
Antec - Power supply - TruePower Quattro - 850W

Corsair - Memory triple channel - DDR3 PC12800 3x2048Mo - CL8-8-8-24 - 1.65V
- TR3X6G1600C8D
Hitachi - Hard drive - Deskstar 1 TB (1000 GB) - 32 MB - 7K1000.C - SATA 2 -
7200 tours
Intel - Processor - Core i7 950 - Socket 1366 - 3.06 GHz Quad Core - 4 x 256
KB L2 - 8MB L3 - Box Version
Sapphire - Graphics card - Radeon HD 5870 - 1024 MB GDDR5 - PCI-Express x16
- DVI / HDMI / Display Port

Noctua - Heatsink - NH-U12P SE... 阅读全帖
h**2
发帖数: 2841
14
来自主题: Hardware版 - 关于CPU的FSB的问题。
你的是socket M的mobile cpu
http://en.wikipedia.org/wiki/List_of_Intel_Core_2_microprocesso
Intel Core和一部分的Merom核心的Core 2是公用Socket M接口的,所以强烈建议上
ebay买最高频的core T2600,或者core 2 duo T7200
如果要综合性价比,我觉得Core 2 Duo T5600是个不错的选择,10多块,2MB L2 cache
,1.83GHz 注意要买SL9SG SL9U3 或 SLA4E ,才是Socket M
http://www.ebay.com/sch/i.html?_nkw=t5600&_sacat=3667&_sop=15&_
y****i
发帖数: 12114
15
我猜想兼容的cpu大概都没有了,能折腾的也就是加内存,换声卡、显卡什么的。
平常不怎么用,打印东西的时候用它,因为家里的老打印机只能接串口,也就这个老电
脑还有串口了。
大家指点指点。谢谢。
Foxconn 6100K8MA-RS
Form Factor Micro ATX
Compatible Processors Athlon 64, Athlon 64 FX, Athlon 64 X2
Processor Socket Socket 939
Chipset Type NVIDIA nForce 410 / NVIDIA nForce 410 MCP
Max Bus Speed 1000 MHz
Width 9.6 in
Depth 9.6 in
Power Connectors -
Installed Qty (Max Supported) 0 ( 1 )
RAM Installed ( Max ) 0 MB / 4 GB (max)
Supported RAM Technology DDR SDRAM
RAM F... 阅读全帖
d***a
发帖数: 13752
16
如果一定要64核的,可以买4-socket,用16-core AMD Opteron的server。
价格低一些的搞法,是买barebone server,自己配处理器和内存,但8000刀
还是不够的。
比如说在newegg.com上配这样的一个server:
SUPERMICRO AS-1042G-TF, 1U Rackmount Server Barebone, quad socket G34, 32
DIMM slots
$1,400
四个AMD Opteron 6376 2.3GHz, Socket G34, 115W 16-Core,
$730x4 = $2,920
32条Kingston 32GB DDR3-1333 ECC RDIMM
$270x32 = $8,640
6个3TB Hard drive
$130x6 = $780
这些算下来要$13,740。
如果是我来买,会多花一些钱,买现成的用Intel处理器的server。
l*******e
发帖数: 3584
17
求助,没有合适的工具,打不开路由的盖子,
要用这么个东西 Socket pin-in wrenches
或叫这个名字.Security hex socket (pin-in-hex-socket)
试了一下,2.5 mm 的应该可以下得去,但有一些量,
那American standard 应该是T9 0.098 inch
不知应该买 3/32 的还是 1/8 的.
谁有经验说一下子.谢谢了.
d*j
发帖数: 756
18
谢谢大侠。
这个cpu是不是超频比较爽。我年纪大了,还是不玩超频啥了。刚刚看了个tigerdirect
的kit,大侠给看看咋样:
http://www.tigerdirect.com/applications/SearchTools/item-detail
This Bundle Includes:
AMD FX-8310 3.4GHz - L2 Cache 8MB, 95 Watts, Socket AM3+, OEM, No Fan
Included - FD8310WMW8KHK
Asus AM3+ Motherboard - uATX, Socket AM3+, AMD 760G Chipset, 2000MHz
DDR3 (O.C.), SATA 3.0Gb/s, RAID, 8-Channel Audio, Gigabit LAN, CrossFireX
Ready, USB 3.0, - M5A78L-M/USB3
Kingston HyperX Fury Red 4GB Desktop Memory Module - 1866MHz DDR3,... 阅读全帖
F***Q
发帖数: 6599
19
来自主题: Hardware版 - 配了一台 E5 2658 ES v3的机器

2011
I got the mobo in the mail, the sockets are lga2011-3. it looks like the V4
chips use the same lga2011-3 socket, for example:
http://ark.intel.com/products/92989/Intel-Xeon-Processor-E5-2643-v4-20M-Cache-3_40-GHz
is your ES CPU "QEYP" or "QEYF"?
I bought one with QEYP, and wondering if I can buy a QEYF ES to use on this
dual socket motherboard. I suppose most parameters are identical on these ES
chips.

发帖数: 1
20
来自主题: Hardware版 - ThreadRipper 16C/32T

I think Threadripper doesn't support dual CPUs. Now they are packing more
and more cores on a MCM module to make single socket setup very competitive.
AMD is actually showing some love in 1 socket even for EPYC servers:
https://www.amd.com/system/files/2017-05/TIRIAS-AMD-Single-Socket-Server.pdf
t**s
发帖数: 284
21
来自主题: Internet版 - FTP 服务器问题
家里的G6 FTPserver服务器是连在router后面。
现在从办公室用CuteFTP连过去,得到这个错误信息:
STATUS:> Socket connected. Waiting for welcome message...
ERROR:> Can't read from control socket. Socket error = #10054.
请问这是什么问题?需要修改哪里的设置?
p****d
发帖数: 2183
22
傻问题,牛人别笑:
try {
Socket sock = new Socket("xxx.xxx.xxx.xxx",80);
} catch (IOException e) {
e.printStackTrace();
}
我需不需要在catch块里写sock.close()?要是创建没有成功,是不是就是说socket为空,
那我也不需要在catch里显式的释放?
L*********r
发帖数: 92
23
Socket oSocket = null;
try
{
oSocket = new new Socket("xxx.xxx.xxx.xxx",80);
}
finally
{
//assume the implementation of socket close is elegant
if(oSocket!=null)
{
oSocket.Close();
}
}
m*****y
发帖数: 224
24
来自主题: Java版 - 新手问一个多线程的问题
我要实现一个简单的web server,不需要考虑过载之类太复杂的情况,就假定有20个左
右的clients会同时连接上来。需要对于每一个进来的client都分一个thread去处理。
我做了一个clientHandler class
public class ClientHandler implements Runnable{
private Socket imcoming; //client
private BufferredReader reader; //read from client socket
private PrintWriter writer; //write to client socket
public void clientInterpreter(){
//处理client的各种请求
}

public void run(){
clientInterpreter();
}

private int methodA(String filePath){
File afile = new File(file
m*****y
发帖数: 224
25
来自主题: Java版 - 新手问一个多线程的问题
哦谢谢!
我的server是这样写的:
public class MyAppServer {
private static final int PORT = 8000;
public static void main(String[] args) {
try {
ServerSocket socket = new ServerSocket(PORT);
try {
while (true) {
final Socket connection = socket.accept();
Runnable task = new ClientHandler(connection);
new Thread(task).start();
}
} catch (IOException e1) {
System.err.println("Error while accepting connection on port " + PORT);
} finally {
c**m
发帖数: 30
26
I am guessing that when you say "socket messages", you mean your own
application message because buffers for sockets are measured in Ks, not Ms.
So you received huge data through socket and stored them in one chunk of
memory that could be 500M. Without knowing the nature of your application,
my guess is you should process your data and if possible store them to
secondary storage. If your footprint grows to significantly larger than
anticipated my money is on memory leak. I remember that I use
x****u
发帖数: 44466
27
来自主题: Programming版 - C++网络编程问题
初学者用C写socket程序百分之百是垃圾,而AJAX只要能跑起来,还是可以卖钱的。
现在非用socket写的网络程序已经极为稀有了。就算要做个linux下的FTP的client,也
不应该碰socket。
k*******d
发帖数: 1340
28
来自主题: Programming版 - 求建议:C++的TCP/IP编程库
最近在看TCP/IP, 因为习惯用C++,不大喜欢直接用socket那一套C的风格,有什么比较
好用的C++库
吗?最好是跨平台的,windows,linux通用的,我在网上google到几个,不知道哪个比
较好用,最好
是比较成熟的稳定的,支持多线程的。最好能够提供传输各种数据类型的function,我
的意思是,
socket只能以byte的形式传输,在介绍socket的书上看到了很多关于数据传输的东西,
比如int要注
意network type和host type转换,floating两边encode/decode要兼容之类的,有没有
什么库
把这些function都实现好了的,这样直接调用就方便了。谢谢!
j***i
发帖数: 3096
29
来自主题: Programming版 - 求建议:C++的TCP/IP编程库
Windowsxi下的标准socket和Linux/Unix下的socket除了个别函数有点不同,其他几乎
没有区别。Socket的程序是C++中最容易跨平台使用的。

asynchronous的支持了。
z***e
发帖数: 5393
30
来自主题: Programming版 - 求建议:C++的TCP/IP编程库
所以我才说“可以跨平台通用的实用性socket程序是不存在的”。
还有就是对ipv6呢?我是不清楚linux上的接口和windows上在这方面的差别.
而且我住要是觉得网络程序本身定制性就很强,每个应用的具体需求都千差万别,但是
socket本身的API就那么几个。照楼主的本意只是想简化Socket的接口而已,也就是变
成类似java一样简单,那样子的话根本没必要动用什么第三方库,自己写最好。

system
p***o
发帖数: 1252
31
来自主题: Programming版 - 研讨一下TCP fragment的问题
That's socket programming 101: STREAM socket vs. DATAGRAM socket .
p**o
发帖数: 3409
32
import struct
import socket
def inet_atoi (ipstr):
""" Converts xxx.xxx.xxx.xxx IPv4 string to a 32-bit int.
"""
#Equivalent pure Python implementations:
#lambda ipstr: reduce(lambda x, y: (x << 8) | y,
# map(int, ipstr.split('.')))
#lambda ipstr: long(''.join("%02x" % int(i)
# for i in ipstr.split('.')), 16)
#
return struct.unpack ("!I", socket.inet_aton (ipstr)) [0]
def inet_itoa (ipint):
""" Converts 32-bit int IPv4... 阅读全帖
T********i
发帖数: 2416
33
大家工作的领域不一样。我理解你说的socket buffer overflow什么意思。但是我的系
统保持CPU 100%有我的道理。
强实时系统,唯一的不确定性就是memory cache miss。我的系统有很多buffer,不只
socket buffer。确保不会overflow很简单。就是确保consumer比producer消耗的快。
我的系统,consumer的速率比producer的速率高一个数量级。就是为了提供足够的余量
。因此有任何buffer overflow检测到,直接crash,因为肯定是程序写错了。
至于socket buffer,其实最容易控制。TCP本身就有flow control,UDP实现一个也简
单。实际应用中,我们的message rate的上限都是已知的。因此设计起来很容易。
至于保持CPU 100%,主要是消除context switch。这个只有我这种系统才有这种需求。
大家做事情的思路完全不一样,没有可比性。我是用效率换延迟。你们不可能这么用。
至于你的见识,我挺佩服的。

dollar
c****3
发帖数: 10787
34
在大量TCP连接的网络应用,吞吐量下降和延迟上升是同时的。不可能只下降网络吞吐
量,不上升延迟,或者反之。
因为象C10K,这种问题,本质都是应用程序,如何管理10000个socket的问题。你可以
用一堆线程,必然带来同时吞吐下降和延迟上升的问题。
做同时10000个socket的客户端,和做10000个socket的服务器,都是面临同样问题。两
者本质是一样的。
c****3
发帖数: 10787
35
高吞吐必然是低延迟,高延迟,必然是低吞吐。
因为大量TCP连接的问题是应用程序如何以最短的时间,知道那个Socket里面有新数据
(请求),快速响应请求,所以必然是高吞吐,低延迟。做不到这点,必然是高延迟,
低吞吐。这涉及如何用多线程,如何选择select,poll,epoll或者其他socket API的
策略。我记得微软的io complete port(等同linux里epoll的边沿触发),推荐的使用
线程数是CPU核心数+2。
也有人用非常规做法,达到高性能。比如减少poll里面的数组长度,把大量socket分成
很多小的组,快速采样。应用程序可以选择的策略很多,好坏性能可以差非常多。
S*A
发帖数: 7142
36
来自主题: Programming版 - 10M persistent TCP connections
这个我已经搞清楚了。那个 tcp_rmem tcp_wmem
只是一个水位线(的缺省值)。前面提到的,并没有
安排内部一个 buffer size 是 tcp_rmem,内存是以
sk_buff 连接来管理的.这个sk_buff 在接受端是和网卡
收来的网包挂钩。发送端是和 socket send 的数据挂钩。
改编水位线并不影响数据是如何来的,只是影响sk_buff
链有多长的时候触发数据合并和发送。接受端就是让socket
返回有数据可以读。发送端就是试图把数据发出去。
水位线太低的时候,就会频繁触发读写。就是说,本来
收20K 的东西用4 个系统调用read, 有可能变成要 10个
系统调用。 对系统的开销是增加了,因为系统调用次数和
中断数目都增加了。但是并不能节省很多内存,霸占的内存
是还没有处理的数据,如果有数据来不及处理,水位线再
低那些内存也还是霸占着。
没有影响内存分页,因为每次数据大小是由于网络包和socket
write 的 buffer 决定的。水位线就是影响什么时候开始把数据
刷出去。
BTW, 我看了代码,没有硬性限制这个buffer 不能小于 PAGE
s... 阅读全帖
S*A
发帖数: 7142
37
来自主题: Programming版 - 10M persistent TCP connections
这个我已经搞清楚了。那个 tcp_rmem tcp_wmem
只是一个水位线(的缺省值)。前面提到的,并没有
安排内部一个 buffer size 是 tcp_rmem,内存是以
sk_buff 连接来管理的.这个sk_buff 在接受端是和网卡
收来的网包挂钩。发送端是和 socket send 的数据挂钩。
改编水位线并不影响数据是如何来的,只是影响sk_buff
链有多长的时候触发数据合并和发送。接受端就是让socket
返回有数据可以读。发送端就是试图把数据发出去。
水位线太低的时候,就会频繁触发读写。就是说,本来
收20K 的东西用4 个系统调用read, 有可能变成要 10个
系统调用。 对系统的开销是增加了,因为系统调用次数和
中断数目都增加了。但是并不能节省很多内存,霸占的内存
是还没有处理的数据,如果有数据来不及处理,水位线再
低那些内存也还是霸占着。
没有影响内存分页,因为每次数据大小是由于网络包和socket
write 的 buffer 决定的。水位线就是影响什么时候开始把数据
刷出去。
BTW, 我看了代码,没有硬性限制这个buffer 不能小于 PAGE
s... 阅读全帖
S*A
发帖数: 7142
38
来自主题: Programming版 - C10M 练习2: 空TCP 连接,1M per 4G RAM
这个练习1 已经发现了,C10M 没有强壮的内存支持是
没戏的。单单是 kernel 部分就已经消耗很多内存了。
所以我们把目标调整一下,1M per 4G RAM。
这样 64G 内存就有可能实现 10M。
练习2 就是看看,我们如果保留 1M/4G 的空TCP
连接,可不可以。完全不往 TCP 里面发东西。就是
建立连接而已。这样也不存在 epoll 问题。
和实验1一样,我会发些拍脑瓜想出来的简单代码。
你直接用这个代码冲刺 1M/4G 会碰到些实际问题。
有兴趣的同学跟着做一下实验,看看有没有办法解
决这些问题。
BTW,我是实验出了 1M/4G (服务器方),所以是
有可能的。建立1M 连接还花了不少时间。
服务器方代码。端口是80, 大家可以自己改。
include
#include
#include
#include
#include
#include
#include
#include 阅读全帖
S*A
发帖数: 7142
39
来自主题: Programming版 - C10M 练习2: 空TCP 连接,1M per 4G RAM
拍脑瓜的简单客户端。假设端口是 80, 启动指定服务器 IP 地址,
不用域名。当然会碰到一个 IP 地址只能发出去 65K 个连接的限制。
如何用 ip alias 使用多个 IP 地址解决这个问题留给大家自己改。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
void die(char *reason)
{
perror(reason);
exit(1);
}
int main(int argc, char **argv)
{
int sockfd;
struct sockaddr_in... 阅读全帖
S*A
发帖数: 7142
40
来自主题: Programming版 - C10M 练习2: 空TCP 连接,1M per 4G RAM
这个练习1 已经发现了,C10M 没有强壮的内存支持是
没戏的。单单是 kernel 部分就已经消耗很多内存了。
所以我们把目标调整一下,1M per 4G RAM。
这样 64G 内存就有可能实现 10M。
练习2 就是看看,我们如果保留 1M/4G 的空TCP
连接,可不可以。完全不往 TCP 里面发东西。就是
建立连接而已。这样也不存在 epoll 问题。
和实验1一样,我会发些拍脑瓜想出来的简单代码。
你直接用这个代码冲刺 1M/4G 会碰到些实际问题。
有兴趣的同学跟着做一下实验,看看有没有办法解
决这些问题。
BTW,我是实验出了 1M/4G (服务器方),所以是
有可能的。建立1M 连接还花了不少时间。
服务器方代码。端口是80, 大家可以自己改。
include
#include
#include
#include
#include
#include
#include
#include 阅读全帖
S*A
发帖数: 7142
41
来自主题: Programming版 - C10M 练习2: 空TCP 连接,1M per 4G RAM
拍脑瓜的简单客户端。假设端口是 80, 启动指定服务器 IP 地址,
不用域名。当然会碰到一个 IP 地址只能发出去 65K 个连接的限制。
如何用 ip alias 使用多个 IP 地址解决这个问题留给大家自己改。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
void die(char *reason)
{
perror(reason);
exit(1);
}
int main(int argc, char **argv)
{
int sockfd;
struct sockaddr_in... 阅读全帖
d*******r
发帖数: 3299
42
来自主题: Programming版 - 各位所在公司的code review烦人不?
我觉得 code review 能发现一些菜鸟的低级问题还是很有用的。
最近review公司同事的TCP socket代码,他居然是把 TCP socket 当 message service
(not byte stream service)来用的,每次就socket.recv()一次,就assume把对面整
个的message接收完了,连buffering&framing都不做。这code已经在production里面跑
了一会儿了,我review完让他改,他还说不知道真的是不是问题,汗死我了... 现在网
络条件真是好呀,这样跑着都没出大问题。
z*******3
发帖数: 13709
43
来自主题: Programming版 - 热门技术系统学习,求指导

vert.x的scaling比node强一万倍
就上次那个多个cores启动多个threads的scaling
你看vert.x怎么做的
我用groovy,就简单几行字
def options = [
port:4321, instances:8
]
def server = vertx.createNetServer(options)
搞定,这样8个threads会同时监听4321 port
然后再在这上面加listener/handler,比如
server.connectHandler({ socket ->
socket.handler({ buffer ->
// Just echo back the data
socket.write(buffer)
})
})
是不是很屌?
z****e
发帖数: 54598
44
来自主题: Programming版 - nodejs cluster和vert.x比较怎么样?
jxcore那个测试明显有问题
把最开始的反应时间当作所有的benchmark
10runs算个p啊,应该10^3以上才make sense
还有就是很明显代码,setups什么都没给
鬼知道他怎么测的,当别人要求用multiple threading测试的时候
作者居然不知道有multiple threading的设置,那搞p啊
说明根本没用过,因为对于socket的控制,tcp允许多个socket同时listen同一个port
但是udp不允许你这么干,所以还是需要在socket的verticle上做点设置才行
而对于http来说,我相信这个设置很重要,所以tim fox解释说是setup的问题
但是原作者根本没看懂这里面会有什么问题,这个太不可信了
anyway,这个测试很容易做,你自己试试就知道了
只要源代码和具体的setup给出来,自己跑最有说服力
相比之下techempower的源代码,setups都放在github上
你自己随时可以重现他们的测试,这个非常的有说服力
期待vert.x回到techempower的比武中去
z****e
发帖数: 54598
45
来自主题: Programming版 - nodejs cluster和vert.x比较怎么样?

assigned
vertx
差不多是这样滴
by default,vert.x会启动多个threads,根据你具体的cores来建
但是,一个verticle,只能被一个thread执行,在同一个时间点
所以如果你只写了一个verticle,然后启动vert.x去用这个verticle去listen某一个
port
那么虽然vert.x启动了多个threads,但是这个verticle只能被一个thread所执行
所以瓶颈就发生在这里,因为一个thread独占了这个verticle,其他threads就只能干
瞪眼了
也做不了什么事,所以这个时候,需要直接scale out,根据core数量
部署相同数量的verticles,这样多个threads就可以同时listen同一个port了
这个在v3文档中有很清晰的描写
DeploymentOptions options = new DeploymentOptions().setInstances(16);
vertx.deployVerticle("com.mycompany.MyOrderProcessorVerticle", o... 阅读全帖
z****e
发帖数: 54598
46
来自主题: Programming版 - Vert.x3 says "hello" to NPM users
http://vertx.io/blog/vert-x3-says-hello-to-npm-users/
13th July 2015 by pmlopes
In programming literature it has become the standard to create a hello world
program as the first example. In this
article I’ll be demonstrating how NPM users can quickly get started with
vert.x. You will see that it is not
that different and in fact it can be done using the tools you’re used to.
Note that although we are using NPM we are
not relying on node.js, all javascript code runs on the JVM.
Hello World Exampl... 阅读全帖
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)