Données techniques du create.stephan-brumme.com
Geo IP vous fournit comme la latitude, la longitude et l'ISP (Internet Service Provider) etc. informations.
Notre service GeoIP a trouvé l'hôte create.stephan-brumme.com.Actuellement, hébergé dans Germany et son fournisseur de services est 1&1 Internet AG .
Latitude: |
49.004718780518 |
Longitude: |
8.3858299255371 |
Pays: |
Germany (de)
|
Ville: |
Karlsruhe |
Région: |
Baden-Wurttemberg |
ISP: |
1&1 Internet AG |
Analyse d'en-tête HTTP
Les informations d'en-tête HTTP font partie du protocole HTTP que le navigateur d'un utilisateur envoie à appelé Apache contenant les détails de ce que le navigateur veut et acceptera de nouveau du serveur Web.
X-Content-Type-Options: | nosniff |
Content-Language: | en |
X-Powered-By: | PHP/7.0.30 |
Transfer-Encoding: | chunked |
Content-Encoding: | gzip |
Keep-Alive: | timeout=15 |
Server: | Apache |
TSV: | N |
Connection: | keep-alive |
X-UA-Compatible: | IE=edge |
Date: | Fri, 20 Jul 2018 15:35:33 GMT |
X-Frame-Options: | deny |
Content-Type: | text/html;charset=UTF-8 |
DNS
mx: | MX preference = 10, mail exchanger = mx01.kundenserver.de. MX preference = 10, mail exchanger = mx00.kundenserver.de.
|
ipv4: | IP:217.160.122.160 ASN:8560 OWNER:ONEANDONE-AS Brauerstrasse 48, DE Country:DE
|
ipv6: | 2001:8d8:1001:1059:9ed8:6a63:33be:101f//8560//ONEANDONE-AS Brauerstrasse 48, DE//DE
|
HtmlToText
smallz4 - optimal lz4 compression posted august 17, 2016 by stephan brumme you came here to grab just the code or a binary ? scroll down to the download section and git repository. a short overview how smallz4 compares to the original lz4 and a program called lz4x (which follows similar ideas as smallz4 ) can be found here . and if you are interesting in the inner working, keep on reading and enjoy the ride ... optimal parsing in the context of compression, optimal parsing is a multi-pass algorithm to find the smallest output of compressible data. whenever there are multiple choices of encoding a symbol (or a sequence of symbols), optimal parsing will choose the representation which leads to the overall smallest output. that means, it may prefer a locally sub-optimal encoding in order to achieve a globally optimal encoding. most compression algorithms strives for locally optimal encoding because it's computationally cheaper. the most basic algorithm, the greedy algorithm, always selects the encoding that fits best "right now". a significant improvement is called "lazy evaluation" and takes the next group of symbols into consideration and decides which encoding yields the smallest output for the whole group. in a way, lazy evaluation can be seen as a local version of optimal parsing. it does the same job for a group of symbols instead of the whole file. compressing the string abcde_bcdefgh_abcdefghxxxxxxx returns different file sizes: $ echo "abcde_bcdefgh_abcdefghxxxxxxx" | lz4 - 9 --no-frame-crc | wc -c 43 $ echo "abcde_bcdefgh_abcdefghxxxxxxx" | ./smallz4 | wc - c 41 let's assume that red characters are literals, i.e. uncompressed data. green pairs of numbers indicate distance and length of a match. and let's ignore xxxxxxx from now on (it's only purpose is to hide the fact that the lz4 format specification forbids matches at the very end of a file). lz4 's result in detail: abcde_ (5,4) fgh_ (14,5) fghxxxxxxx it found two matches: the first replaced bcde by a reference to a sequence we saw 5 bytes ago. that reference "costs" 3 bytes while the four literals would have occupied 4 bytes. we saved a byte here. the second match replaces abcde by a reference to the beginning of the file. again, we need 3 bytes to represent the match while the replaced text was 5 bytes long. two more bytes saved ! however, this compression is not optimal. smallz4 can squeeze out another two bytes because it postpones the second match: abcde_ (5,4) fgh_a (9,7) xxxxxxx smallz4 detects that matching abcde would save 2 bytes but matching bcdefgh saves 4 bytes. optimal parsing - pass 1 for each byte of input data, the longest match will be found and stored in an array called match (starts at about line 513). additional data structures such as previoushash and previousexact only speed up the code. a simple brute-force routine will give you the same result - albeit slower. position 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 (padding) character a b c d e _ b c d e f g h _ a b c d e f g h xxxxxxx match distance 5 (5) (5) (5) (8) 14 9 9 9 9 9 (9) (9) match length 4 (3) (2) (1) (1) 5 7 6 5 4 (3) (2) (1) (read more ...) xxhash - a hash algorithm as fast as memcpy posted august 4, 2016 by stephan brumme numbers, please ! yes, yann collet's xxhash algorithm can be faster than memcpy (visual c++): throughput bytes/cpu cycle memcpy 5.45 gbyte/s approx. 1.6 xxhash32 (yann's implementation) 5.9 gbyte/s approx. 1.7 xxhash32 (my code) 5.9 gbyte/s approx. 1.7 crc32 slicing-by-16 3.2 gbyte/s approx. 1 yes, xxhash is extremely fast - but keep in mind that memcpy has to read and write lots of bytes whereas this hashing algorithm reads everything but writes only a few bytes . for comparison: memset achieves 8.4 gbyte/s on the same intel core i7-2600k cpu @ 3.40ghz system. even more interesting is that even pretty old versions of g++ have a faster version of memcpy (7.7 gbyte/s) and much, much faster intrinsics for memset (18.2 gbyte/s). update august 8, 2016: i wrote very similar code for xxhash64. it's super-fast on x64 but much slower when compiled for x32 systems. most of this posting will remain unchanged to avoid confusion - just keep in mind that every time xxhash32 touches 4 bytes, xxhash64 does pretty much the same with 8 bytes (with a few minor exceptions). throughput bytes/cpu cycle xxhash64 (yann's implementation) 10.5 gbyte/s approx. 3.1 xxhash64 (my code) 10.5 gbyte/s approx. 3.1 algorithm xxhash was designed from the ground up to be as fast as possible on modern cpus. it is not a strong cryptographic hash, such as the sha family, but still passes the smhasher test set with 10 points. most simple hashes, such as fnv (see my posting , too), step through the input data byte-by-byte. working on byte at position 1 requires that all work on the previous byte (at position 0) has finished. therefore, we have a dependency which causes the cpu to potentially wait (stalling). slightly better algorithms process a block of bytes at once, e.g. crc slicing-by-4/8/16 consumes 4/8/16 bytes per step - instead just one - giving a substantial speed-up. however, we still have the same problem: working on block 1 requires that all work on block 0 has finished. xxhash subdivides input data into four independent streams. each stream processes a block of 4 bytes per step and stores a temporary state . only the final step combines these four state s into a single one. the major advantage is that the code generator has lots of opportunities to re-order opcodes to avoid latencies. i drew a crude kindergarten-style image to visualize how memory is accessed when hashing 64 bytes: 0 stream 0 1 2 3 4 stream 1 5 6 7 8 stream 2 9 10 11 12 stream 3 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 state[0] 49 50 51 52 state[1] 53 54 55 56 state[2] 57 58 59 60 state[3] 61 62 63 (read more ...) tiny regular expression matcher posted august 11, 2015 by stephan brumme regular expressions (regex) can be the gate to heaven as well as the gate to hell. usually they are both at the same time. writing correct regular expression is sometimes as tough as writing a regular expression parser. chapter 1 of the excellent book "beautiful code" (isbn 9780596510046) discusses rob pike's very short and elegant regex parser code . it doesn't come with all the bells and whistles of a full perl regular expression matcher but is quite sufficient for many purposes. i extended rob's c code in such a way that it can handle the following regex meta-symbols (see limitations , too): regex symbol meaning already in rob pike's code ? . match any character yes * the previous character is arbitrarily repeated yes + the previous character occurs at least once no ? the previous character occurs once or not at all no ^ match regular expression only to the beginning of the text yes $ match regular expression only to the end of the text yes \ treat next character as a literal, even if it is a regex symbol no my c code consists of just one .h and one .c file without any external dependencies - not even #include <stdlib.h> . the source file match.c contains about 100 lines of straight c code (plus tons of comments and blank lines). take a look at my explanation of the matching algorithm . you can perform a live search of bram stoker's book "dracula" (public domain, my digital version is 15123 lines long, 838 kbytes): a very basic use case looks as follows: hide example: find first match const char * text = "aabc" ; const char * regex = "^a+b" ; if (match( text , regex )) printf ( "yes, %s matches the pattern %s" , text , regex ); (read more ...) fast crc32 posted november 10, 2011 by stephan brumme, updated february 4, 2015 error checking real life data tends to get corrupted because machines (and humans) are never as reliable as we wish for. one efficient way is make sure your data wasn't unintendedly modifiied is to generate some kind of hash. that hash shall be unique, comp
Analyse PopURL pour create.stephan-brumme.com
http://create.stephan-brumme.com/eratosthenes/
http://create.stephan-brumme.com/antialiased-circle/
http://create.stephan-brumme.com/smallz4/
http://create.stephan-brumme.com/hash-library/
http://create.stephan-brumme.com/fnv-hash/
http://create.stephan-brumme.com/crc32/
http://create.stephan-brumme.com/portable-memory-mapping/
http://create.stephan-brumme.com/hide-strings-executable/
http://create.stephan-brumme.com/tiny-regular-expression-matcher/
http://create.stephan-brumme.com/stl-sort/
Informations Whois
Whois est un protocole qui permet d'accéder aux informations d'enregistrement.Vous pouvez atteindre quand le site Web a été enregistré, quand il va expirer, quelles sont les coordonnées du site avec les informations suivantes. En un mot, il comprend ces informations;
Domain Name: STEPHAN-BRUMME.COM
Registry Domain ID: 37686369_DOMAIN_COM-VRSN
Registrar WHOIS Server: whois.1and1.com
Registrar URL: http://registrar.1and1.info
Updated Date: 2018-10-13T07:18:10Z
Creation Date: 2000-10-12T12:14:40Z
Registry Expiry Date: 2019-10-12T12:14:40Z
Registrar: 1&1 Internet SE
Registrar IANA ID: 83
Registrar Abuse Contact Email: abuse@1and1.com
Registrar Abuse Contact Phone: +1.6105601459
Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
Name Server: NS1028.UI-DNS.BIZ
Name Server: NS1028.UI-DNS.COM
Name Server: NS1028.UI-DNS.DE
Name Server: NS1028.UI-DNS.ORG
DNSSEC: unsigned
URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/
>>> Last update of whois database: 2018-11-02T15:52:32Z <<<
For more information on Whois status codes, please visit https://icann.org/epp
NOTICE: The expiration date displayed in this record is the date the
registrar's sponsorship of the domain name registration in the registry is
currently set to expire. This date does not necessarily reflect the expiration
date of the domain name registrant's agreement with the sponsoring
registrar. Users may consult the sponsoring registrar's Whois database to
view the registrar's reported date of expiration for this registration.
TERMS OF USE: You are not authorized to access or query our Whois
database through the use of electronic processes that are high-volume and
automated except as reasonably necessary to register domain names or
modify existing registrations; the Data in VeriSign Global Registry
Services' ("VeriSign") Whois database is provided by VeriSign for
information purposes only, and to assist persons in obtaining information
about or related to a domain name registration record. VeriSign does not
guarantee its accuracy. By submitting a Whois query, you agree to abide
by the following terms of use: You agree that you may use this Data only
for lawful purposes and that under no circumstances will you use this Data
to: (1) allow, enable, or otherwise support the transmission of mass
unsolicited, commercial advertising or solicitations via e-mail, telephone,
or facsimile; or (2) enable high volume, automated, electronic processes
that apply to VeriSign (or its computer systems). The compilation,
repackaging, dissemination or other use of this Data is expressly
prohibited without the prior written consent of VeriSign. You agree not to
use electronic processes that are automated and high-volume to access or
query the Whois database except as reasonably necessary to register
domain names or modify existing registrations. VeriSign reserves the right
to restrict your access to the Whois database in its sole discretion to ensure
operational stability. VeriSign may restrict or terminate your access to the
Whois database for failure to abide by these terms of use. VeriSign
reserves the right to modify these terms at any time.
The Registry database contains ONLY .COM, .NET, .EDU domains and
Registrars.
REGISTRAR 1&1 Internet SE
SERVERS
SERVER com.whois-servers.net
ARGS domain =stephan-brumme.com
PORT 43
TYPE domain
RegrInfo
DOMAIN
NAME stephan-brumme.com
CHANGED 2018-10-13
CREATED 2000-10-12
STATUS
clientTransferProhibited https://icann.org/epp#clientTransferProhibited
NSERVER
NS1028.UI-DNS.BIZ 217.160.81.28
NS1028.UI-DNS.COM 217.160.82.28
NS1028.UI-DNS.DE 217.160.80.28
NS1028.UI-DNS.ORG 217.160.83.28
REGISTERED yes
Go to top