Skip to content

Strange issue with localhost vs 127.0.0.1 #286

Open
@Geolim4

Description

@Geolim4

Hello,

I'm the Phpfastcache maintainer and I'm currently implementing support of Arangodb for the next major release (v9).

But I noticed that using an endpoint with "localhost" is VERY slow (look for Test duration:):

[Begin Test: Arangodb driver]
[PHPFASTCACHE: CORE v9.0.0-alpha3#287beb8 | API v4.0.0]
[PHP v8.0.10 with: apcu, bcmath, calendar, Core, couchbase, ctype, curl, date, dom, fileinfo, filter, gd, gettext, hash, iconv, json, libxml, mbstring, mongodb, mysqlnd, openssl, pcre, PDO, pdo_mysql, pdo_sqlite, Phar, readline, redis, Reflection, session, SimpleXML, SPL, standard, tokenizer, xml, xmlreader, xmlwriter, zip, zlib]
---
[INFO] Running CRUD tests on the following backend: Phpfastcache\Drivers\Arangodb\Driver
[DEBUG] Clearing backend before running test...
[INFO] Using cache key: cache_key_6d7964d5eff0aebf5f343936
[PASS] The pool successfully saved an item.
[INFO] Re-fetching item by its tags and an unknown tag (tag strategy "ALL")...
[PASS] The pool expectedly failed to retrieve the cache item.
[INFO] Re-fetching item by its tags (tag strategy "ALL")...
[PASS] The pool successfully retrieved the cache item.
[INFO] Re-fetching item by its tags and an unknown tag (tag strategy "ONLY")...
[PASS] The pool expectedly failed to retrieve the cache item.
[INFO] Re-fetching item by one of its tags (tag strategy "ONLY")...
[PASS] The pool successfully retrieved the cache item.
[INFO] Re-fetching item by one of its tags and an unknown tag (tag strategy "ONE")...
[PASS] The pool successfully retrieved the cache item.
[PASS] The pool successfully retrieved the expected value.
[INFO] Updating the cache item by appending some chars...
[INFO] Deferred item is being committed...
[PASS] The pool successfully committed deferred cache item.
[PASS] The pool successfully retrieved the expected new value.
[PASS] The pool successfully deleted the cache item.
[PASS] The pool successfully cleared.
[PASS] The cache item does no longer exists in pool.
[INFO] I/O stats: 26 HIT, 7 MISS, 7 WRITE
[INFO] Driver info: No readable human data provided by ArangoDB :(
Test results:  0 assertions failed, 0 assertions skipped and 12 assertions passed out of a total of 12 assertions.
Test duration: 94.373s

Using "127.0.0.1" is drastically more efficient (look for Test duration:):

[Begin Test: Arangodb driver]
[PHPFASTCACHE: CORE v9.0.0-alpha3#287beb8 | API v4.0.0]
[PHP v8.0.10 with: apcu, bcmath, calendar, Core, couchbase, ctype, curl, date, dom, fileinfo, filter, gd, gettext, hash, iconv, json, libxml, mbstring, mongodb, mysqlnd, openssl, pcre, PDO, pdo_mysql, pdo_sqlite, Phar, readline, redis, Reflection, session, SimpleXML, SPL, standard, tokenizer, xml, xmlreader, xmlwriter, zip, zlib]
---
[INFO] Running CRUD tests on the following backend: Phpfastcache\Drivers\Arangodb\Driver
[DEBUG] Clearing backend before running test...
[INFO] Using cache key: cache_key_db75017e1a22a1575f313634
[PASS] The pool successfully saved an item.
[INFO] Re-fetching item by its tags and an unknown tag (tag strategy "ALL")...
[PASS] The pool expectedly failed to retrieve the cache item.
[INFO] Re-fetching item by its tags (tag strategy "ALL")...
[PASS] The pool successfully retrieved the cache item.
[INFO] Re-fetching item by its tags and an unknown tag (tag strategy "ONLY")...
[PASS] The pool expectedly failed to retrieve the cache item.
[INFO] Re-fetching item by one of its tags (tag strategy "ONLY")...
[PASS] The pool successfully retrieved the cache item.
[INFO] Re-fetching item by one of its tags and an unknown tag (tag strategy "ONE")...
[PASS] The pool successfully retrieved the cache item.
[PASS] The pool successfully retrieved the expected value.
[INFO] Updating the cache item by appending some chars...
[INFO] Deferred item is being committed...
[PASS] The pool successfully committed deferred cache item.
[PASS] The pool successfully retrieved the expected new value.
[PASS] The pool successfully deleted the cache item.
[PASS] The pool successfully cleared.
[PASS] The cache item does no longer exists in pool.
[INFO] I/O stats: 26 HIT, 7 MISS, 7 WRITE
[INFO] Driver info: No readable human data provided by ArangoDB :(
Test results:  0 assertions failed, 0 assertions skipped and 12 assertions passed out of a total of 12 assertions.
Test duration: 0.341s

Process finished with exit code 0

At this moment I'm really unable to tell you if it's arangodb-php-related, arangodb-related or simply php-related but I think you now have a lead to investigate on this issue and maybe warn your users in the WIKI/Docs.

Here's is the configuration used for the tests made above:

  • Win-10 x64
  • Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz 4.00 GHz
  • 32,0 Go Ram
  • PHP (x64 NTS) v8.0.10 with: apcu, bcmath, calendar, Core, couchbase, ctype, curl, date, dom, fileinfo, filter, gd, gettext, hash, iconv, json, libxml, mbstring, mongodb, mysqlnd, openssl, pcre, PDO, pdo_mysql, pdo_sqlite, Phar, readline, redis, Reflection, session, SimpleXML, SPL, standard, tokenizer, xml, xmlreader, xmlwriter, zip, zlib
  • Latest version of arangodb/arangodb-php

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions