SEARCH KEYWORD -- EXCEED



  Practice of using spinlock instead of mutex

Spinlock and mutex are two important concepts in multithreading programs. They are used to lock some shared resource to prevent concurrent access which may affect data consistency. But they do have differences, what are the differences? when should we use spinlock instead of mutex? The Theory In theory, when a thread tries to lock a mutex and it does not succeed, because the mutex is already locked, it will go to sleep, immediately allowing another thread to run. It will continue to sleep until...

   Spinlock,Mutex,Concurrency     2014-04-19 21:54:12

  PHP's Output Buffering

While profiling our application I came across a a rather strange memory usage by the ob_start() function. We do use ob_start() quite a bit to defer output of data, which is a common thing in many applications. What was unusual is that 16 calls to ob_start() up chewing through almost 700kb of memory, given that the data being buffered rarely exceeds 1-2kb, this was quite unusual. I started looking at the C code of the ob_start() function and found this interesting bit of code inside php_sta...

   PHP,Memory,ob_start(),source,40kB     2011-12-08 10:20:32

  Apple is catching up with Samsung in smart connected device market

According to Sina Tech. IDC's latest report shows that as of the end of 2012, Samsung has a 21.2% share of the global market on smart connected devices which is #1. Apple has a 20.3% share which ranks #2. In smart connected devices market, Apple is catching up with Samsung. These devices include desktop computers, laptops, smart phones and tablet PCs. However, because of the higher prices,  Apple is still far ahead of Samsung in revenue. As of the end of 2012, Apple's revenue accounts for 3...

   Apple,Samsung,IDC     2013-03-26 10:53:31

  The 9 lines of code of Google

Are you still remembering the then hot debated news about Oracle suing Google allegedly copying a small portion of codes from Oracle's Java in 2010. At that time, Oracle experts estimated that Google owes Oracle between $1.4 billion and $6 billion in damages if liable. But the court thought Oracle was eligible only for statutory damages for that copying, which were not expected to exceed a few hundred thousand dollars. At last, Oracle agreed the zero damage result. Are you curious about whi...

   Google,Java,Open source     2014-08-15 20:29:52

  UC browser won Readers' Choice Award

China's leading mobile Internet software technology and application service provider UC excellent, its flagship product, UC browser, following the 2011 recommended by the world's leading classified information site About.com named the Readers' Choice Award in best mobile browser category, is once again awarded by About.com as Reader's Choice Award in Best Android Browser category. UC browser comes out on top in the About.com selection in two consecutive years.About.com, a part of The New York T...

   UC,About.com,Readers' Choice Aeard,2012     2012-04-03 08:08:03

  How to optimize MySQL insert statement

For a big data system, one problem is the data access efficiency, one more problem is that the data insertion is very slow. We had a service system, the data loading process would take 4-5 hours. This time consuming operation is risky since if the program is interrupted during the loading process, it might be rerun, this will be troublesome. So it's necessary to improve the insertion efficiency for big data systems. Here we provide two optimization suggestions. 1. Combine multiple insert stateme...

   MySQL,insert,optimization     2012-10-24 22:03:13

  How to make select in WinSock exceed the 64-socket limit

When doing cross-platform network programming, the only API available on Windows that corresponds to the epoll/kevent style reactor event model is select. However, it has a limitation: the number of sockets passed into select cannot exceed FD_SETSIZE, which is set to 64. Therefore, select in Java’s NIO on Windows also has the same limit. Many services ported to Windows that use the reactor model face this constraint, which often gives the impression that server programs on Windows hav...

   EXCEED,SELECT,JAVA,WINDOWS     2024-10-31 23:47:50

  HeartBleed: Inside the heart, what causes the bleeding?

Just after a few weeks since Apple's famous goto fail bug, there is one bug in OpenSSL which catches the attention from the world again. The bug is named HeartBleed, found in OpenSSL library, a famous open source library supporting lots of  SSL/TLS communication among server/client applications. The reason why this bug catches the attentions from the world is it affects almost all sites which are using the affected OpenSSL library, these includes many applications like Nginx server, some v...

   OpenSSL,HeartBleed     2014-04-09 05:47:30

  Learn How to Write iOS Apps

My friend contacted me on twitter and asked for advice on different sources on how to learn iOS apps. Since this paragraph will already exceed 140 characters, I'm posting here, instead. (Obviously, reading this blog regularly is a great way to pick up some iOS development tricks) To get started, some people buy a book or find some good online tutorials. I tried both approaches, and the online tutorials were definitely better. I found Stanford's class on iPhone Development, available for free...

   IOS App,Tutorial,Advice,Resource     2011-12-25 00:58:25

  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