| | |
| | | template <typename T, typename AT> class Q_TYPE> |
| | | LockFreeQueue<ELEM_T, Allocator, Q_TYPE>::~LockFreeQueue() |
| | | { |
| | | LoggerFactory::getLogger()->debug("LockFreeQueue desctroy"); |
| | | // LoggerFactory::getLogger()->debug("LockFreeQueue desctroy"); |
| | | SemUtil::remove(slots); |
| | | SemUtil::remove(items); |
| | | SemUtil::remove(mutex); |
| | |
| | | } |
| | | |
| | | request_head = NetModSocket::decode_request_head(request_head_bs); |
| | | printf("server received request from host = %s:%d\n", request_head.host, request_head.port); |
| | | // printf("server received request from host = %s:%d\n", request_head.host, request_head.port); |
| | | |
| | | if(request_head.content_length > max_buf) { |
| | | |
| | |
| | | request_head.content_length = send_size; |
| | | |
| | | |
| | | printf("write_request %s:%d\n", request_head.host, request_head.port); |
| | | // printf("write_request %s:%d\n", request_head.host, request_head.port); |
| | | if(write_request(connfd, request_head, send_buf, send_size) != 0) { |
| | | LoggerFactory::getLogger()->error("write_request failture %s:%d\n", node->host, node->port); |
| | | close_connect(connfd); |
| | |
| | | } |
| | | |
| | | response_head = NetModSocket::decode_response_head(response_head_bs); |
| | | printf(">>>> read_response %s\n", response_head.host); |
| | | // printf(">>>> read_response %s\n", response_head.host); |
| | | if(response_head.code != 0) { |
| | | // 对方没有对应的key |
| | | return 1; |
| | |
| | | |
| | | function scp() { |
| | | |
| | | scp -P 100 -rp ../build basic@192.168.5.22:/data/disk2/test |
| | | scp -rp ../build basic@192.168.20.10:/data3/workspace/wzq |
| | | scp -P 100 -rp ./softbus basic@192.168.5.22:/data/disk2/test |
| | | scp -rp ./softbus basic@192.168.20.10:/data3/workspace/wzq |
| | | } |
| | | |
| | | case ${1} in |
| | |
| | | int i,j, n, recv_arr_size; |
| | | net_mod_recv_msg_t *recv_arr; |
| | | |
| | | int node_arr_size = 2; |
| | | int node_arr_size = 1; |
| | | //192.168.20.104 |
| | | net_node_t node_arr[] = { |
| | | // {"192.168.5.22", port, 11}, |
| | | {"192.168.20.10", port, 11}, |
| | | {"192.168.20.104", port, 11} |
| | | //{0, port, 11} |
| | | {"192.168.20.10", port, 11} |
| | | // {"192.168.20.104", port, 11} |
| | | }; |
| | | |
| | | void * client = net_mod_socket_open(); |
| | |
| | | |
| | | void mclient(int port) { |
| | | |
| | | int status, i = 0, processors = 2; |
| | | int status, i = 0, processors = 1; |
| | | void *res[processors]; |
| | | // Targ *targs = (Targ *)calloc(processors, sizeof(Targ)); |
| | | Targ targs[processors]; |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | int |
| | | main(const int argc, const char **argv) |
| | | { |
| | | //const char *url = tcp://192.168.20.104:8801 |
| | | const char *url = "ipc:///tmp/reqrep.ipc"; |
| | | |
| | | |
| | | const char *url = "tcp://192.168.20.10:5001"; |
| | | //const char *url = "ipc:///tmp/reqrep.ipc"; |
| | | |
| | | if (argc < 2) { |
| | | fprintf(stderr, "Usage: %s %s|%s \n", argv[0], "server", "client"); |
New file |
| | |
| | | # 测试结果 |
| | | |
| | | 每个测试三次,取平均值 |
| | | |
| | | 测试时间单位是微妙,1微妙 = 千分之一毫秒 = 十万分之一秒 |
| | | |
| | | ## softbus 本地测试 |
| | | |
| | | | 次 | 用时(微妙) | |
| | | | ---- | ---- | |
| | | | 1 | 37.30 | |
| | | | 2 | 37.09 | |
| | | | 3 | 37.72 | |
| | | | 平均 | 37.36 | |
| | | |
| | | |
| | | |
| | | |
| | | ## nng 本地测试 |
| | | |
| | | | 次 | 用时(微妙) | |
| | | | ---- | ---- | |
| | | | 1 | 41.57 | |
| | | | 2 | 52.38 | |
| | | | 3 | 39.68 | |
| | | | 平均 |44.54 | |
| | | |
| | | |
| | | |
| | | ## softbus 网络测试 |
| | | |
| | | | 次 | 用时(微妙) | |
| | | | ---- | ---- | |
| | | | 1 | 547.77 | |
| | | | 2 | 539.17 | |
| | | | 3 | 529.72 | |
| | | | 平均 |538.88 | |
| | | |
| | | |
| | | ## nng 网络测试结果 |
| | | |
| | | | 次 | 用时(微妙) | |
| | | | ---- | ---- | |
| | | | 1 | 204.48 | |
| | | | 2 | 194.51 | |
| | | | 3 | 193.36 | |
| | | | 平均 | 197.45 | |
| | | |
| | | |
| | | # 测试结论 |
| | | |
| | | 本地测试softbus比nng快。 虽然网络测试看起来softbus比nng慢,但是实际上并不具有公平性。因为nng测试只是简单的建立一个连接,然后一直使用这个连接连续发送数据。而softbus为向多节点发送数据与处理网络故障的等情况里做了很复杂的处理。 |
| | | |
| | | # 测试输出 |
| | | ## softbus |
| | | |
| | | 本地 |
| | | ``` |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/build (dev)$ ./test_net_mod_socket mclient 5000 |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (3 sec 730087 usec), 平均: 37.300870 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/build (dev)$ ./test_net_mod_socket mclient 5000 |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (3 sec 709180 usec), 平均: 37.091800 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/build (dev)$ ./test_net_mod_socket mclient 5000 |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (3 sec 772182 usec), 平均: 37.721820 |
| | | |
| | | ``` |
| | | |
| | | 网络 |
| | | ``` |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/build (dev)$ ./test_net_mod_socket mclient 5000 |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (54 sec 777229 usec), 平均: 547.772290 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/build (dev)$ ./test_net_mod_socket mclient 5000 |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (53 sec 917515 usec), 平均: 539.175150 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/build (dev)$ ./test_net_mod_socket mclient 5000 |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (52 sec 972213 usec), 平均: 529.722130 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/build (dev)$ ./test_net_mod_socket mclient 5000 |
| | | |
| | | |
| | | |
| | | ``` |
| | | |
| | | |
| | | ## nng |
| | | |
| | | 本地 |
| | | ``` |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/test_nng (dev)$ ./test_nng mclient |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (4 sec 157404 usec), 平均: 41.574040 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/test_nng (dev)$ ./test_nng mclient |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (5 sec 238815 usec), 平均: 52.388150 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/test_nng (dev)$ ./test_nng mclient |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (3 sec 968687 usec), 平均: 39.686870 |
| | | |
| | | ``` |
| | | |
| | | 网络 |
| | | ``` |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/test_nng (dev)$ ./test_nng mclient |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (20 sec 448536 usec), 平均: 204.485360 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/test_nng (dev)$ ./test_nng mclient |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (19 sec 451469 usec), 平均: 194.514690 |
| | | wzq@wzq-B250M-HD3:~/wk/softbus/test_nng (dev)$ ./test_nng mclient |
| | | 开始测试... |
| | | 发送数目: 100000, 用时: (19 sec 336459 usec), 平均: 193.364590 |
| | | |
| | | ``` |