PING (Packet Internet Groper),因特网包探索器,用于测试网络连接量的程序。Ping发送一个ICMP(Internet Control Messages Protocol)即因特网信报控制协议;回声请求消息给目的地并报告是否收到所希望的ICMP回声应答。 Tracert(跟踪路由)是路由跟踪实用程序,用于确定 IP 数据包访问目标所采取的路径。 telnet命令可以帮助你从这台路由器远程登陆到远端开启了telnet服务的设备,包括路由器、交换机、linux服务器等。并且配置当前路由器的telnet服务。假设该服务器的网页服务器使用的是默认端口,则可以使用命令telnet hostname 80 来测试其是否工作。 Ftp命令的功能是在本地机和远程机之间传送文件
DNS是将域名www.taobao.com映射成主机的IP地址,ARP是将IP地址映射成物理地址,ICMP是报文控制协议,由路由器发送给执行ping命令的主机,而一个ping命令并不会建立一条TCP连接,故没有涉及TCP协议。
答:以孩子、兄弟的存储结构来存储这棵树,使之成为一颗二叉树,然后对二叉树进行链表的转换。 typedef struct TreeNode { int data; struct TreeNode *firstchild; struct TreeNode *nextsibling; }TreeNode,*Tree; void MirrorTree(Tree root) { if(!root) return ; if(root->firstchild) { Tree p=root->firstchild; Tree cur=p->nextsibling; p->nextsibling=NULL; while(cur) { Tree curnext=cur->nextsibling; cur->nextsibling=p; if(p->firstchild) MirrorTree(p); p=cur; cur=curnext; } root->firstchild=p; } } int main(void) { TreeNode *root=(TreeNode *)malloc(sizeof(TreeNode)); Init(); MirrorTree(root); OutPut(); }
答:用B+树来组织,非叶子节点存储(某个时间点,页面访问量),叶子节点是访问的IP地址。这个方案的优点是查询某个时间段内的IP访问量很快,但是要统计某个IP的访问次数或是上次访问时间就不得不遍历整个树的叶子节点。 答:或者可以建立二级索引,分别是时间和地点来建立索引。
ALIGN(P,ALIGNBYTES) ( (void*)( ((unsigned long)P+ALIGNBYTES-1)&~(ALIGNBYTES-1) ) )
typedef union { erts_smp_rwmtx_t rwmtx; byte cache_line_align_[ERTS_ALC_CACHE_LINE_ALIGN_SIZE(sizeof(erts_smp_rwmtx_t))]; }erts_meta_main_tab_lock_t; erts_meta_main_tab_lock_t main_tab_lock[16];答:
利用Union的特性,看到 cache_line_align的大小已经扩展到sizeof(erts_smp_rwmtx_t)向上对齐了,这样寻址都是sizeof(long)的倍数地址上,寻址快,有利于下边数组 erts_meta_main_tab_lock_t main_tab_lock[16]的访问速度。
答:(1)1.Round-robin:轮询分配2.与各服务器保持心跳,随时更新分配器端的负载记录,每次找一个负载最小的Cache.3.对数据做哈希散列,这个不太靠谱. (2)分配器统计各服务器的负载用户量,计算各自占总负载比例,与存储空间比例做差值,取4个服务器中最小的. 比如:服务器1有2人,4台服务器总共20人,那么2/20=0.1 , 计算4/(4+9+15+7)=4/35=0.11。 0.11-0.1=0.01 每台服务器都计算出这个差值来,看谁大就用谁。