Ankündigung

Einklappen
Keine Ankündigung bisher.

mus cms

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • mus cms

    Vorstellung [muːs] - cms

    Die Dateigrößen der gängigen CMS sind für Kleinstrechner wie Raspberry & Co. komplett überzogen.

    Bei mehreren 1000 Dateien ist es schwer den Überblick zu behalten und auch fast unmöglich die Gewähr dafür zu übernehmen, dass kein Schadcode enthalten ist.

    Deswegen habe ich **[muːs]** cms entwickelt.

    ## Technische Daten

    * Anzahl Dateien : 1
    * Dateigröße gezippt: 17 Kilobyte
    * Dateigröße entpackt: 84 Kilobyte
    * Datenbank: SQLite

    Die hier gezeigte Demo (Video) läuft auf einem alten RaspBerry schon relativ zügig.

    Es wäre nett, wenn Ihr Euch das mal anschaut und mir eine kurze Rückmeldung gebt, was Ihr davon haltet.

    Das Video wurde mit OBS-Studio erstellt und soll nur den Workflow demonstrieren. An Schönheit habe ich noch nicht gefeilt...

    der Link : https://gofile.io/?c=rfXGq2


  • #2
    Ohne Download Link o.ä. wird es schwer sich das CMS anzuschauen
    "Software is like Sex, it's best if it's free." - Linus Torvalds

    Kommentar


    • #3
      Es geht nur um das Benutzer-Interface.
      Das kann man auf dem Video erkennen.

      Kommentar


      • #4
        Was für ein Video? Ich habe auf der verlinkten Seite nichts ausser den Rahmen der Webseite.

        Kommentar


        • #5
          Achso. Sieht recht clean aus.

          Der Ansatz ist an sich cool, aber das Argument mit der Dateigröße verstehe ich immer noch nicht. Ich meine selbst ein Raspberry Pi hat im Normalfall mehrere GB Speicherplatz. Da hat selbst ein 12MB Wordpress kaum einen Impact.
          Ich glaube auch eher dass die Wartbarkeit und Verständlichkeit des Codes sinkt wenn dieser in ein einzelnes File gepackt wird.
          "Software is like Sex, it's best if it's free." - Linus Torvalds

          Kommentar


          • #6
            Ich hatte mir Word Press heruntergeladen: 54 Megabyte aufgeteilt in 1918 Dateien! Schon heftig, nur um eine kleine Website aufzusetzen...

            Zur Übersichtlichkeit:

            eine Funktion fhwMD am Anfang (kleiner Markdown Parser)

            einige dringend erforderlich Module die mit <mod>modul</mod> auf den Seiten aufgerufen werden

            eine Klasse myAdmin und von Zeile 1354 bis 1875 reines HTML mit includiertem CSS und Javascript.

            Keinerlei Fremdbibliotheken, kein jQuery kein nix..

            Das ist ein Screenshot aus Brackets...

            code.png

            Kommentar


            • #7
              Zitat von protestix Beitrag anzeigen
              Was für ein Video? Ich habe auf der verlinkten Seite nichts ausser den Rahmen der Webseite.
              Bei mir wird dort ein Video gezeigt und wenn ich auf play klicke auch abgespielt...

              Kommentar


              • #8
                Zitat von JaMa Beitrag anzeigen
                Achso. Sieht recht clean aus.
                Jop, mir gefällts auch.
                Es gibt Pluspunkte für die Icons.

                Relax, you're doing fine.
                RTFM | php.de Wissenssammlung | Datenbankindizes | Dateien in der DB?

                Kommentar


                • #9
                  Da hier ja nun extrem optimiert wird: wie viele Besucher verträgt das Teil denn zeitgleich?

                  Kommentar


                  • #10
                    Zitat von lottikarotti Beitrag anzeigen
                    Da hier ja nun extrem optimiert wird: wie viele Besucher verträgt das Teil denn zeitgleich?
                    ich bin bezgl. Server und Serveroptimierung nicht wirklich im Thema.

                    Bitte schaue Dir das mal an, keine Ahnung ob das extrem schlecht oder gut ist...

                    Versuchsaufbau:

                    Raspberry Model B von 2013
                    512 MB RAM

                    Apache und php 7.3

                    Test mit Apache Benchmark:

                    apache benchmark.PNG

                    Test mit Siege:

                    siegebench.PNG

                    Kommentar


                    • #11
                      Ich wollte es nun doch mal etwas genauer:

                      Versuchsaufbau:

                      Lenovo Yoga 2 Pro Laptop
                      XAMPP

                      Beide Seiten gleicher (sichtbarer) Inhalt. Es lässt sich allerdings nicht vermeiden, dass Wordpress bei gleichem Inhalt doppelt so großen HTML Code erzeugt.

                      Hiermit will ich mich aber nicht näher beschäftigen - ist halt so.

                      Tendenziell ein erstaunliches Ergebnis. Wordpress scheint eine lahme Krücke zu sein. Ich denke, dass man bei gescheiter Serverkonfiguration noch viel optimieren kann.

                      Das gilt aber für beide Systeme

                      Trotzdem mal die Ergebnisse:

                      MUS-CMS:

                      Code:
                      Server Software:        Apache/2.4.41
                      Server Hostname:        192.168.100.31
                      Server Port:            80
                      
                      Document Path:          /
                      Document Length:        11680 bytes
                      
                      Concurrency Level:      20
                      Time taken for tests:   3.558 seconds
                      Complete requests:      1000
                      Failed requests:        0
                      Total transferred:      12044000 bytes
                      HTML transferred:       11680000 bytes
                      Requests per second:    281.07 [#/sec] (mean)
                      Time per request:       71.156 [ms] (mean)
                      Time per request:       3.558 [ms] (mean, across all concurrent requests)
                      Transfer rate:          3305.88 [Kbytes/sec] received
                      
                      Connection Times (ms)
                                    min  mean[+/-sd] median   max
                      Connect:        2   16  84.4      4     611
                      Processing:    16   54  37.5     46     360
                      Waiting:       15   52  35.5     45     357
                      Total:         20   71  96.0     50     721
                      
                      Percentage of the requests served within a certain time (ms)
                        50%     50
                        66%     54
                        75%     57
                        80%     60
                        90%     75
                        95%    126
                        98%    643
                        99%    688
                       100%    721 (longest request)
                      Wordpress:

                      Code:
                      Server Software:        Apache/2.4.41
                      Server Hostname:        192.168.100.31
                      Server Port:            80
                      
                      Document Path:          /beispiel-seite/
                      Document Length:        24662 bytes
                      
                      Concurrency Level:      20
                      Time taken for tests:   104.221 seconds
                      Complete requests:      1000
                      Failed requests:        0
                      Total transferred:      25021000 bytes
                      HTML transferred:       24662000 bytes
                      Requests per second:    9.60 [#/sec] (mean)
                      Time per request:       2084.414 [ms] (mean)
                      Time per request:       104.221 [ms] (mean, across all concurrent requests)
                      Transfer rate:          234.45 [Kbytes/sec] received
                      
                      Connection Times (ms)
                                    min  mean[+/-sd] median   max
                      Connect:        2   11   6.3     11      44
                      Processing:  1070 2061 299.4   2051    3012
                      Waiting:      940 1874 252.5   1879    2686
                      Total:       1074 2072 299.7   2060    3017
                      
                      Percentage of the requests served within a certain time (ms)
                        50%   2060
                        66%   2175
                        75%   2241
                        80%   2305
                        90%   2464
                        95%   2596
                        98%   2755
                        99%   2848
                       100%   3017 (longest request)
                      Ich werde das Projekt überarbeiten und demnächst bei GITHUB einstellen.

                      Kommentar


                      • #12
                        Wäre interessant den selben Test mal mit einer Linux Maschine. PHP unter Windows ist sobald MySQL dazu kommt meiner Erfahrung nach richtig langsam. Die 3 Sekunden für einen Request kann ich bei mir in einem einfachen Symfony Projekt ebenfalls nachstellen sobald ich eine SQL Abfrage mache. Ohne SQL Abfrage läuft das selbe Skript in unter 100ms durch.

                        Kommentar


                        • #13
                          Zitat von Zeichen32 Beitrag anzeigen
                          Wäre interessant den selben Test mal mit einer Linux Maschine. PHP unter Windows ist sobald MySQL dazu kommt meiner Erfahrung nach richtig langsam. .
                          MySQL ist ja hier nicht das Thema. Dennoch kann ich das nicht so stehenlassen:

                          phpcheck.mysql.class.pdodb.php Total: 85 Tests, 0 Errors
                          PHPCheck V1.45, OS: Linux, PHP-Version: 7.2.29 (64 Bit), Time: 0.44 s, Memory: 2.0M (128M)

                          phpcheck.mysql.class.pdodb.php Total: 82 Tests, 0 Errors
                          PHPCheck V1.51, OS: WINNT, PHP-Version: 7.4.2 (64 Bit), Time: 0.44 s, Memory: 2.0M (512M)

                          Die Test laufen alle gegen eine echte MySQL-DB.


                          PHP-Klassen auf github

                          Kommentar


                          • #14
                            Zitat von jspit Beitrag anzeigen
                            MySQL ist ja hier nicht das Thema. Dennoch kann ich das nicht so stehenlassen:
                            Ja aber das eine CMS nutzt sqlite und Wordpress nutzt ne MySQL daher der Hinweis.

                            phpcheck.mysql.class.pdodb.php Total: 85 Tests, 0 Errors
                            PHPCheck V1.45, OS: Linux, PHP-Version: 7.2.29 (64 Bit), Time: 0.44 s, Memory: 2.0M (128M)

                            phpcheck.mysql.class.pdodb.php Total: 82 Tests, 0 Errors
                            PHPCheck V1.51, OS: WINNT, PHP-Version: 7.4.2 (64 Bit), Time: 0.44 s, Memory: 2.0M (512M)
                            Das lässt sich so nicht nachvollziehen, da der Test nicht bekannt ist. Es ist aber schon komisch das verschiedene PHP Versionen und verschiedene Betriebssysteme auf die exakt selbe Ausführungszeit von0,44s kommen.

                            Kommentar


                            • #15
                              Die gleiche Ausführungszeit ist reiner Zufall. Beim Test unter Linux sind auch ein paar Tests mehr gelaufen und die PHP-Version sind auch unterschiedlich..
                              Was ich damit nur zeigen wollte ist das nach meinen Erfahrungen die Zeiten von vergleichbaren Maschinen in der gleichen Größenordnung unter Win10 und Linux liegen.

                              kaminbausatz : Gefällt mir auch. Hast du vor das zu veröffentlichen?
                              PHP-Klassen auf github

                              Kommentar

                              Lädt...
                              X