首页下载资源后端redis-server window版

ZIPredis-server window版

zts13696.81MB需要积分:1

资源文件列表:

Redis-windows.zip 大约有19个文件
  1. Redis/
  2. Redis/dump.rdb 1.85KB
  3. Redis/EventLog.dll 1KB
  4. Redis/Redis on Windows Release Notes.docx 12.22KB
  5. Redis/Redis on Windows.docx 16.33KB
  6. Redis/redis-benchmark.exe 399.5KB
  7. Redis/redis-benchmark.pdb 4.17MB
  8. Redis/redis-check-aof.exe 251KB
  9. Redis/redis-check-aof.pdb 3.36MB
  10. Redis/redis-cli.exe 488KB
  11. Redis/redis-cli.pdb 4.32MB
  12. Redis/redis-server.exe 1.59MB
  13. Redis/redis-server.pdb 6.75MB
  14. Redis/redis-setup.bat 2.91KB
  15. Redis/redis-uninstall.bat 2.2KB
  16. Redis/redis.windows-service.conf 47.08KB
  17. Redis/redis.windows.conf 47.08KB
  18. Redis/server_log.txt 22.3MB
  19. Redis/Windows Service Documentation.docx 13.93KB

资源介绍:

redis-server window版
MSOpenTech’s Redis on Windows
We strive to have a stable, functionally equivalent and comparably performing version of Redis on
Windows. We have achieved performance nearly identical to the POSIX version running head-to-head
on identical hardware across the network. Aside from feature differences that help Redis take
advantage of the Windows infrastructure, our version of Redis should work in most situations with the
identical setup and configuration that one would use on a POSIX operating system.
How is Redis on Windows implemented?
Redis is a C code base that compiles under Visual Studio. Most of the code compiles with only minor
changes (due to syntactical differences between compilers and low-level API differences on Windows).
There are a few areas where there are significant differences in how efficient Windows programs
operate relative to POSIX programs. We have encapsulated most these differences in a platform specific
library. The areas where there are significant differences are:
Networking APIs
POSIX File Descriptors
POSIX fork()
Logging
Windows Services API
Networking Differences
The Windows networking stack is split between user mode code and kernel mode code. Transitions
between user and kernel mode are expensive operations. The POSIX networking APIs on Windows
utilize a programming model that incurs significant performance loss due to the kernel/user mode
transitions. Efficient Windows networking code instead uses the IO Completion Port model to reduce
the impact of this behavior. The APIs used and the programming model for IO Completion is different
enough that we were forced to implement a new networking layer in Redis.
File Descriptors
In a POSIX operating system, all data sources (files, pipes, sockets, mail slots, etc.) are referenced in code
with a handle called a file descriptor. These are low value integers that increment by one with each
successive file descriptor creation. All POSIX APIs that work with file descriptors will function without the
programmer having to know what kind of data source a file descriptor represents. On Windows, each
kind of data source has a separate kind of HANDLE. APIs that work with one HANDLE type will not work
with another kind of HANDLE. In order to make Redis operate with its assumptions about file descriptor
values and data source agnosticism, we implemented a Redis File Descriptor API layer.
fork()
The POSIX version of Redis uses the fork() API. There is no equivalent in Windows, and it is an
exceedingly difficult API to completely simulate. For most of the uses of fork() we have used Windows
specific programming idioms to bypass the need to use a fork()-like API. The one case where we could
not do so was with the point-in-time heap snapshot behavior that the Redis persistence model is based
on. We tried several different approaches to work around the need for a fork()-like API, but always ran
into significant performance penalties and stability issues.
100+评论
captcha