Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- socket



  Why is single threaded Redis so fast

Redis is a high-performance, in-memory key-value database. According to official test reports, it can support around 100,000 QPS (queries per second) on a single machine. However, Redis uses a single-threaded architecture in its design. Why does Redis still have such high performance with a single-threaded design? Wouldn't it be better to use multiple threads for concurrent request processing? In this article, let's explore why Redis has a single-threaded architecture and still maintains its spe...

   REDIS,SINGLE-THREADED,MULTI-THREADING     2023-02-28 05:16:22

  Turn on SecurityManager in Java

SecurityManager in Java is to check whether the application codes can access some restricted resource such as file, socket etc. This can be used in applications which have high security requirements. With this feature turned on, our system resources can be secured with only permitted operations. When JVM starts, it will first check whether the SecurityManager is on by checking the system property java.security.manager, if it's on, then an instance of SecurityManager will be created and it can be...

   SecurityManager,enable,program     2013-12-16 05:03:53

  How to check why Vim is slow

On *nix, some processes may not be able to start up, software runs very slowly suddenly and software's "Segment Fault" are some issues faced by many *nix users. Here we show you how to use truss to trace why Vim becomes slow suddenly. Operating system : FreeBSD-5.2.1-releas vim version is 6.2.154, after typing vim on command line, sometimes we need to wait for a few minutes to get into the edit interface and there is no error output. After carefully checking .vimrc and all vim settings, there ar...

   vim, truss, linux     2012-11-26 11:54:35

  Web programs written in C++ are no big deal

I had an interesting conversation with a friend the other day. She wanted to try putting together a weekend "hackathon" just to see what we could build. It would be one of those fun things where we just start tinkering and see what comes out of it. Somehow, this conversation got to the topic of libraries, programming languages, and frameworks. Then it got a little weird. I guess the current "shiny" thing is still more-or-less Ruby, and particularly when used with Rails. Oh, I suppo...

   C++,Web design,Library,Web app     2012-01-11 11:57:26

  gethostbyname vs getaddrinfo

getaddrinfo is slower than ping when resolving domain names. I think ping uses gethostbyname to resolve a domain name. The question becomes whether getaddrinfo is slower than gethostbyname. After testing with both functions, we find that getaddrinfo is really slow compared to gethostbyname. By strace tracking,  we find getaddrinfo will communicate with DNS server 10 times and gethostbyname will communicate with DNS server communication twice.gethostbyname is an old way to resolve domain nam...

   C++,network,DNS     2012-08-15 14:06:34

  UDP vs. TCP

Introduction Hi, I’m Glenn Fiedler and welcome to the first article in my online book Networking for Game Programmers In this article we start with the most basic aspect of network programming, sending and receiving data over the network. This is just the beginning – the simplest and most basic part of what network programmers do, but still it is quite intricate and non-obvious as to what the best course of action is. Take care because if you get this part wrong it will have ...

   Game design,Networking,Communication,TCP,UDP,Design     2012-02-27 04:49:53

  Using C for a specialized data store

Pixenomics stores and transports 1.2 million pixels from the server to the client. During development we played with various methods to store and process this. Our ultimate goal was to send the entire board in under 1 second. During the stages of prototyping we used a MySQL database without thinking too much about performance. With a mere 2,000 pixels we quickly realised this wasn’t even usable as a demo. Changing the storage engine to memory was much better but still obviously unu...

   C,Data store,Efficiency,Performance     2012-03-07 05:09:38

  FTP active mode and passive mode

1. What's active mode and passive mode a. FTP has two ports to control: Port 20 is for data transfer Port 21 is for control or establish TCP connection b. The process of active connection Note: C represents Client and S represents Server S opens port 20 and 21 C connects to port 21 of S with a random port, this port can be between 1024 and 65536, it sends port+x to server at the same time to specify C(X)->S(21) When S receives the command, it will sends back ACK, S(21)->C(X) S will set ...

   FTP,Active mode,Passive mode     2013-04-01 07:01:25

  What and what not to log while debugging

Log is a critical part of an application. It serves as an eye to the programmer on how the application is working while debugging. Especially for applications running on production environment, if the application encounters problem and the problem cannot be reproduced on other environments, log will be extremely useful. While log is essential, but developers have to log smartly. Because if don't put log smartly, you may not get what you want while debugging or you may get too many...

   PROGRAMMING,DEBUG,LOG,SUPPORT     2016-03-14 08:09:03

  Building The Linux Kernel In 60 Seconds

In less than one minute, it's now possible to build the Linux kernel from source on a desktop. Besides finishing up the Phoronix Test Suite 3.6-Arendal release this weekend, on Saturday I began running some new Intel CPU benchmarks. In building the Linux 3.1 kernel for x86_64 in a default configuration (make defconfig), I've now managed to trim down the compile time to less than sixty seconds on a single-socket desktop system. Similar speeds can be achieved out of multi-socket servers and othe...

   Linux kernal,Build,Intel processor,sgort time     2011-12-12 07:45:32