FastComments.com Blog

Fri Jan 21 2022
...

FastComments Δημοσιεύει Απόδοση Από Διακομιστή

! Αυτό το άρθρο περιέχει τεχνική ορολογία

Τι είναι νέο

Από την κυκλοφορία του Anfang 2020, το FastComments έχει χρησιμοποιήσει αποκλειστικά JavaScript για να αποδώσει το widget σχολίων.

Τι θα λέγατε αν σας λέγαμε ότι μπορείτε να έχετε σχεδόν όλες τις ίδιες βασικές λειτουργίες, αλλά χωρίς τη χρήση JS;

Αυτή είναι μια στιγμιότυπη οθόνη, σταματήστε να προσπαθείτε να κάνετε κλικ σε αυτό.
SSR Demo

Η παραπάνω στιγμιότυπη οθόνη είναι το widget σχολίων του FastComments, χωρίς JavaScript. Μπορείτε να δείτε αυτή τη σελίδα, χωρίς JavaScript, εδώ.

Πώς να το χρησιμοποιήσετε

Αν χρησιμοποιείτε WordPress, η έκδοση 3.10.1 του plugin FastComments προσθέτει αυτόματα υποστήριξη για SSR ως εναλλακτική λύση για τους χρήστες σας που περιηγούνται με απενεργοποιημένο το JS.

Για προσαρμοσμένες υλοποιήσεις, ανακτήστε το UI για ένα νήμα σχολίου, απλά καλέστε το /ssr/comments για εκείνη τη σελίδα:

https://fastcomments.com/ssr/comments?tenantId=$tenantId&urlId=$urlId&url=$url

Όπου το $urlId είναι το url ή το id της σελίδας. Η τεκμηρίωση σχετικά με αυτό είναι εδώ.

Για παράδειγμα, με PHP μπορούμε να στείλουμε ένα iframe στη σελίδα που αποδίδει το νήμα σχολίων μέσα:

Παράδειγμα SSR βασισμένο σε PHP
1
2<?php
3$tenantId = rawurlencode("my-tenant-id");
4$urlId = rawurlencode("my-page-url-article-id");
5$url = rawurlencode("my-page-url");
6
7$fastcomments_url = "https://fastcomments.com/ssr/comments?tenantId=$tenantId&urlId=$urlId&url=$url";
8?>
9<iframe
10 src="<?php echo $fastcomments_url; ?>"
11 horizontalscrolling="no"
12 allowtransparency="true"
13 frameborder="0"
14 title="FastComments"
15 width="100%"
16 height="1500px"
17 style= "width: 1px !important; min-width: 100% !important; border: none !important; overflow: hidden !important;"
18></iframe>
19

Μπορούμε επίσης να κάνουμε μια API κλήση για να αποκτήσουμε το HTML για ένα νήμα σχολίων και να το αποδώσουμε ή να το αποθηκεύσουμε.

Η πλήρης τεκμηρίωση είναι διαθέσιμη στα SSR Docs στο docs.fastcomments.com.

SSO

Επειδή αγαπάμε τις επιχειρηματικές ακρωνύμους, μην ανησυχείτε, το SSR υποστηρίζει SSO. Ένα παράδειγμα του Single-Sign-On με το SSR είναι εδώ.

Τοπικοποίηση

Το SSR βάσει ορίου τοποθετεί αυτόματα την απάντηση με βάση τις γλώσσες που σχετίζονται με τις κεφαλίδες που στέλνει ο περιηγητής. Μπορεί επίσης να χρησιμοποιήσει τις ίδιες παρακάμψεις τοποθεσίας όπως και το widget βασισμένο σε JavaScript.

Γιατί δημιουργήθηκε αυτό

Μία από τις κύριες καταγγελίες σχετικά με υπηρεσίες όπως το FastComments είναι ότι απαιτούν JS. Ήδη κάνουμε το widget σχολίων όσο το δυνατόν πιο ελαφρύ και διασφαλίζουμε ότι τηρούμε τους SLA κλήσεων API μας < 20ms, αλλά πολλές μικρότερες κοινότητες δεν θα επιλέξουν μια τέτοια λύση εάν σημαίνει την προσθήκη JS στον ιστότοπό τους.

Αυτό ανοίγει επίσης την ευκαιρία να χρησιμοποιηθούν μηχανές απόδοσης που δεν έχουν πρόσβαση σε JavaScript.

Η τεχνολογία

Το FastComments χρησιμοποιεί το δικό του μικρό μικροframework για την απόδοση του UI. Αυτό το framework χρησιμοποιεί μια παρόμοια προσέγγιση με το React, εκτός από το ότι επιτρέπονται χειροκίνητες τροποποιήσεις dom εκτός της αρχικής απόδοσης.

Η βασική βιβλιοθήκη widget σχολίων έχει ένα μόνο σημείο εισόδου - παίρνει ένα σύνολο κατάστασης και δημιουργεί το αντίστοιχο HTML και CSS για απόδοση. Απλώς καλούμε αυτό στον διακομιστή, επίσης. Όταν ο χρήστης αλληλεπιδρά με τη σελίδα, η κατάσταση αλλάζει και το τελευταίο HTML ανακτάται. Αυτό χτίστηκε ως αποτέλεσμα ενός hackathon που έγινε στο πλαίσιο του νέου έτους.

Ζωντανά Σχόλια

Δεδομένου ότι το UI αποδίδεται από το διακομιστή, μία φορά, οι δυνατότητες ζωντανών σχολίων δεν είναι διαθέσιμες.

Επιπλέον, η ειδοποίηση του κουδουνιού δεν είναι αυτή τη στιγμή διαθέσιμη. Θα είμαστε ανοιχτοί για να προσθέσουμε αυτή τη δυνατότητα στο μέλλον.

Απόδοση

Η UI που αποδίδεται από το διακομιστή χρησιμοποιεί τις ίδιες βελτιστοποιήσεις αποθήκευσης και τη μηχανή απόδοσης όπως το widget βασισμένο σε JavaScript. Για μικρά νήματα σχολίων, η απόδοση είναι στην πραγματικότητα καλύτερη, καθώς ο χρήστης δεν χρειάζεται να κατεβάσει ένα σενάριο που στη συνέχεια ανακτά τα σχόλια και αποδίδει το UI.

Crawlers και SEO

Το FastComments λειτουργεί ήδη καλά με τους web crawlers; αν η SEO είναι ανησυχία, η χρήση του SSR δεν απαιτείται.

Μελλοντικές εφαρμογές

Σκοπεύουμε να κυκλοφορήσουμε μια λύση Forum στο μέλλον. Παραδοσιακά, τα φόρουμ είναι σελιδοποιημένα και αποδίδονται από το διακομιστή. Οι σύγχρονες λύσεις Forum απομακρύνονται από αυτό το πρότυπο χρησιμοποιώντας ατελείωτη κύλιση και απόδοση πλευράς πελάτη. Δεν πιστεύουμε ότι αυτή πρέπει να είναι η μόνη επιλογή για τη χρήση μιας τρίτης λύσης Forum.

Στο συμπέρασμα

Ελπίζουμε ότι βρήκατε αυτόν τον οδηγό χρήσιμο και ευανάγνωστο. Μη διστάσετε να σχολιάσετε παρακάτω με οποιαδήποτε ερώτηση.

Στην υγειά σας!