Acasă Legume Lifehack: Folosirea la maximum a căutării Google pentru un marketing eficient în mulțime. Vizualizați SERP-urile Google în alte țări

Lifehack: Folosirea la maximum a căutării Google pentru un marketing eficient în mulțime. Vizualizați SERP-urile Google în alte țări

Componentele Indy utilizate în Delphi 6.

Pe lângă serviciile și protocoalele de bază ale Internetului, există o gamă largă de servicii suplimentare, ale căror capabilități sunt adesea folosite de dezvoltatorii de Internet. În plus, capacitatea de a afișa informații folosind un browser nu este întotdeauna o soluție acceptabilă pentru aplicațiile de Internet. În acest caz, este rezonabil să se utilizeze infrastructura Internet pentru schimbul de date și să se ofere afișare de informații prin aplicații client mai complexe dezvoltate, de exemplu, în Delphi.

Să presupunem că doriți să implementați o logică personalizată pe partea de server care nu este încorporată în serverele Web standard. Pentru a rezolva această clasă de probleme, Delphi include biblioteca Internet Direct (Indy) de la Nevrona Designs (http://www.nevrona.com/Indy/). Această bibliotecă, dezvoltată special pentru Borland Delphi, are deja opt versiuni, dintre care cea mai recentă a fost inclusă în noua versiune a Delphi. Setul de componente este împărțit în trei grupe: client (Indy Client), server (Indy Servers) și auxiliare (Indy Misc).

Clienți Indy și Servere Indy

Majoritatea componentelor Indy Client și Indy Servers sunt perechi corespunzătoare părților client și server ale protocoalelor și serviciilor (cu excepția componentelor separate, în principal bazate pe server, cum ar fi TunnelMaster și TunnelSlave), și permit utilizarea protocoalelor precum TCP/IP, UDP, NNTP, SMTP, FTP, HTTP, precum și servicii ECHO, FINGER, WHOIS etc.

Componentele clientului Indy sunt scrise folosind socket-uri. Priza de pe partea client necesită o conexiune la server. Odată stabilită conexiunea, clientul și serverul pot începe să facă schimb de mesaje. Aceste mesaje sunt de altă natură, dar de obicei schimbul are loc conform unui protocol specific (de exemplu, HTTP)

TIdTCPClient și TIdTCPServer

Aceste componente sunt utilizate pentru a susține unul dintre principalele protocoale de rețea - TCP (Transmission Control Protocol) și sunt, de asemenea, clasele de bază pentru componentele TIdSMTP și TIdFTP. Clasa TIdTCPServer are o proprietate ThreadMgr care este implicit la zero. Dacă ThreadMgr este zero când TIdTCPServer este activat, clasa TIdThreadMgrDeafault va fi creată implicit. În caz contrar, este utilizat managerul de proces instalat.

TIdUDPClient și TIdUDPServer

Aceste componente sunt utilizate pentru a suporta protocolul de rețea UDP (User Datagram Protocol) și sunt, de asemenea, clasele de bază pentru o serie de alte componente Indy.

TIdChargenServer

Componenta este folosită pentru a genera caractere aleatorii, de obicei în scopuri de testare.

TIdDayTime și TIdDayTimeServer

Componentele sunt folosite pentru a oferi un serviciu de timp. Clientul solicită și serverul raportează data și ora curente.

TIdDNSResolver

Aceasta este o componentă client care servește cererile de la un server DNS (Domain Name Service). Interogările serverului DNS sunt concepute pentru a înlocui numele computerului cu adresa sa IP. TIdDNSResolver este o subclasă a TIdUDPClient.

TIdDICTServer

Componenta Server Protocolul Dicționarului (DICT) - Un server de dicționar bazat pe TCP care permite unui client să acceseze un dicționar în limbaj natural.

TIdDISCARDServer

Componenta server care acceptă serverul de înregistrări. Înregistrările pot fi folosite ca instrument de depanare și de măsurare. Serviciul de evidență pur și simplu transmite orice date oricui este dispus să le primească.

TI dEcho și TI dECHOServer

Componentele sunt destinate să ofere un serviciu de răspuns, utilizat de obicei pentru a testa starea de sănătate a unei rețele. Clientul trimite un mesaj text către server, serverul returnează mesajul clientului. Dacă mesajul este deranjat, rețeaua funcționează defectuos.

TIdFinger și TIdFingerServer

Componentele sunt menite să furnizeze un protocol care permite unui utilizator să interogheze date referitoare la prezența altor utilizatori în sistem. Unele servere gestionează astfel de solicitări ale clienților. Folosirea acestei perechi de componente vă va permite să deserviți solicitările clienților care află dacă există alți utilizatori în sistem.

TIdFTP

Componenta include suport complet pentru protocolul de transfer de fișiere - FTP (File Transfer Protocol). Este acceptat transferul pasiv și activ de date, precum și operațiuni precum GET și PUT, ștergerea directoarelor, obținerea de cote, dimensiunile fișierelor și directoarelor. În activitatea sa, TI dFTP folosește clasa TIdSimpleServer. Când un transfer de fișiere FTP este în curs, conexiunea TCP secundară este deschisă pentru transferul de date și este închisă când datele au fost transferate. Această conexiune se numește „legătură de date” și este unică pentru fiecare fișier transferat.

TIdGopher și TIdGopherServer

Aceste componente sunt concepute pentru a oferi un protocol de rețea care a fost înlocuit recent de la WWW (World Wide Web) de protocolul HTTP. Serverul care implementează acest protocol oferă un sistem de suport pentru fluxul de lucru distribuit ierarhic. Un exemplu de utilizare a acestei perechi de componente, situate în directoarele \demos\indy\GopherClient și \demos\indy \GopherServer, demonstrează modul în care acest protocol poate fi utilizat pentru a furniza informații în rețeaua locală despre fișierele aflate pe computerul dvs., inclusiv cele închise. cele..

TIdHostNameServer

O componentă de server concepută pentru a transmite numele serverului local clienților.

TIdHTTP și TIdHTTPServer

Componentele sunt utilizate pentru a furniza protocolul de rețea HTTP (versiunile 1.0 și 1.1 sunt acceptate, inclusiv operațiunile GET, POST și HEAD). În plus, este oferit suport pentru autentificare și utilizarea serverelor proxy. Componenta server este utilizată pentru a furniza servicii unui alt server Web care acceptă acest protocol. TIdHTTPServer facilitează implementarea unor funcții precum cookie-uri, managementul stării și multe altele.

TIdIcmpClient

O componentă client concepută pentru a furniza protocolul ICMP (Internet Control Message Protocol), care este utilizat pentru a efectua operația de ping și a urmări rețeaua.

TIdPOP3

O componentă client concepută pentru a furniza protocolul POP (Post Office Protocol), inclusiv suport pentru codarea și decodificarea MIME, precum și transferul de caractere multibyte.

TIdIMAP4Server

O componentă de server concepută pentru a suporta operațiuni IMAP (Internet Message Access Protocol) pe un server. Protocolul vă permite să căutați mesaje de e-mail pe server. Diferența dintre IMAP și POP este că protocolul POP necesită memorie suplimentară pentru stocarea datelor, în timp ce protocolul IMAP accesează serverul în loc de computerul client. IMAP4 a fost creat pentru a înlocui POP3, dar protocolul POP3 este încă standardul utilizat pe scară largă.

TIdIRCServer

O componentă de server concepută pentru a sprijini operațiunile de servicii cele mai frecvent utilizate pe Internet, denumită în mod obișnuit chat (pentru conversații prietenoase). Componenta oferă elementele de bază ale unui server IRC (Internet Relay Chat).

TIdMappedPortTCP

O componentă de server concepută pentru a crea porturi mapate, care sunt adesea folosite în serverele proxy. Metodele acestei componente vă permit să mapați un port la altul. De exemplu, portul 80 poate fi mapat la portul 3000 și toate cererile către primul port (portul 80) vor fi redirecționate către cel de-al doilea port (portul 3000).

TIdNNTP și TIdNNTPServer

Aceste componente sunt necesare pentru a furniza Network News Transfer Protocol (NNTP) utilizat în serviciile de știri. Componenta client include suport pentru codificarea și decodarea MIME, precum și suport pentru caractere multiocteți și codificări alternative. Componenta server vă permite să creați servere de știri. Este important de menționat că TIdNNTPServer nu este un server de știri cu funcții complete, ci o componentă care oferă funcționalitatea de bază pentru un astfel de server.

TIdQOTD și TIdQOTDServer

Componentele sunt utilizate pentru a oferi un serviciu de cotație a zilei. Componenta client se conectează la o instanță a componentei server pentru a primi cotația zilnică. Fiecare instanță de server conține o bază de date unică de cotații.

TIdSMTP

O componentă client concepută pentru a fi utilizată în aplicațiile SMTP (Simple Mail Transfer Protocol), oferă suport pentru autentificare, codificare și decodare MIME și suport pentru caractere multibyte.

TIdSNTP

O componentă client concepută pentru a furniza SNTP (Simple Network Time Protocol) - un serviciu de timp. Poate fi folosit pentru a vă conecta la orice serviciu orar pentru a determina data și ora curente.

TIdSimpleServer

O componentă de server care oferă un server TCP ușor. Vă permite să organizați o conexiune punct la punct. Folosit pentru a crea servere cu un singur utilizator, adică poate servi doar o singură conexiune la un moment dat. Spre deosebire de componenta TIdTCPServer, nu generează procese secundare în timp ce așteaptă cereri de la clienți și în timp ce procesează aceste solicitări. Cu alte cuvinte, dacă serverul servește o solicitare de la un client și în acel moment un alt client îl accesează pentru a se conecta, atunci acesta va fi blocat până la sfârșitul procesării primei cereri.

TIdTelnet și TIdTelnetServer

Componenta client este utilizată pentru a organiza sesiuni la distanță pe un alt computer, inclusiv negocieri și autentificare pe consolă. Protocolul de comunicare presupune prezența unei persoane care realizează interacțiune interactivă cu serverul. Componenta client nu are suport pentru afișare și emulare de terminal, ci pur și simplu oferă o conexiune la back-end. De obicei, protocolul server TIdTelnetServer este utilizat pentru a organiza baze de date la distanță bazate pe text pentru interacțiunea interactivă cu clienții.

TIdTime și TIdTimeServer

Componenta client este o alternativă la componenta TIdSNTP pentru sincronizare. Este important de reținut că formatele acestor două protocoale sunt diferite. TIdTime se bazează pe formatul RFC 868 (returnează timpul în standardul intern al sistemului de operare UNIX, făcând toate conversiile necesare). Componenta server este similară în funcționare cu un server DayTime. Poate fi folosit pentru a implementa un serviciu de timp pe computerul local. Nu este necesar niciun cod suplimentar, trebuie doar să creați o instanță de TIdTimeServer care va returna ora ceasului intern al computerului server.

TIdTrivialFTP și TIdTrivialFTPServer

Aceste componente sunt necesare pentru a organiza cel mai simplu protocol de transfer de fișiere. Componenta client a acestui protocol este utilizată pentru a se conecta la o instanță a componentei server corespunzătoare. Protocolul este destinat cazurilor private, ușoare, locale de transfer de fișiere, de exemplu, în rețelele locale sau pentru încărcarea (încărcarea) tabelelor de rutare pe routere. Datorită caracteristicilor slabe ale acestui protocol, utilizarea lui nu este recomandată atunci când se utilizează algoritmi de autentificare sau orice alte mecanisme de securitate. Scopul principal al acestui protocol este de a transfera fișiere pe un dispozitiv hardware pentru a-l modifica.

TIdTunnelMaster și TIdTunnelSlave

Componentele tunelului serverului sunt utilizate în serverele proxy pentru a organiza mai multe conexiuni logice pe o singură conexiune fizică (tunel). Aceste clase pot fi utilizate în diverse scopuri, cum ar fi stabilirea unei conexiuni secrete pe canale non-secrete.

TIdWhois și TIdWhoIsServer

Această componentă client se conectează la orice server Whois standard care vă permite să obțineți informații despre domenii. Componenta server oferă funcționalitatea de bază a serverului NIC.

Indy Diverse

Pagina paletei Componente diverse Indy include BASE64, UUE, Quoted Printable și alte formate comune de comunicare prin e-mail, codificatoare (MD2, MD4 și MD5) pentru standardele criptografice utilizate pentru stocarea parolelor și semnăturilor electronice într-o formă ireversibilă (greu de decriptat), precum și multe alte componente și utilități utile folosite adesea în dezvoltarea aplicațiilor de internet.

TIdAntigel

Datorită blocării algoritmilor componente ai lui Indy, deseori se pare că aplicația „se blochează” în timp ce conexiunea funcționează. Pentru a exclude utilizarea proceselor secundare (threads) la organizarea comunicațiilor pentru a preveni înghețarea (înghețarea) aplicației, este suficient să plasați componenta specificată pe formular.

Componenta funcționează prin analizarea solicitărilor din stiva de protocoale TCP/IP și trimiterea de mesaje către aplicație în timpul unei întârzieri când conexiunile externe sunt blocate, ceea ce creează iluzia de a rula cod. Deoarece componenta afectează conexiunile blocate numai pentru procesul principal, utilizarea TIdAntiFreeze în procesele secundare ale aplicației nu este necesară. Rețineți că componenta TIdAntiFreeze încetinește conexiunile deoarece procesul principal este întrerupt periodic pentru a procesa mesajele. De aici rezultă că trebuie avut grijă ca aplicația în curs de dezvoltare să nu petreacă prea mult timp procesând mesajele, inclusiv OnClick, OnPaint, OnResize etc. Într-o oarecare măsură, acest lucru poate fi controlat prin proprietățile clasei TIdAntiFreeze. Utilizarea acestei componente este opțională, dar vă permite să rezolvați problema sincronizării conexiunilor cu interfața vizuală a aplicației.

TIdDateTimeStamp

O clasă pentru efectuarea de matematică a datei și orei legată de faptul că protocoalele de Internet folosesc formate diferite de dată și oră; în plus, clienții și serverele pot fi în fusuri orare diferite.

TIdIPWatch

Aceasta este o componentă bazată pe cronometru care monitorizează constant modificările adresei IP a computerului. Evenimentele componente sunt declanșate atunci când este detectată o modificare. Componenta specificată este de obicei utilizată pentru a detecta faptul că un computer s-a conectat la Internet sau la orice altă rețea. Modificarea adresei IP în această situație se poate datora atribuirii unei adrese IP de către un server DHCP (Dynamic Host Configuration Protocol) atunci când se conectează la o nouă rețea.

TIDLogDebug

Scopul acestei componente este de a intercepta evenimentele oricărei componente client sau server și de a plasa o înregistrare a evenimentului în fișierul specificat. Această componentă este foarte utilă pentru depanarea componentelor Indy.

TIdMessage

Componenta este utilizată în combinație cu alte componente pentru a decripta sau a codifica corect mesajele. Acestea pot fi componente POP, SMTP și NNTP. Clasa acceptă criptarea și decriptarea MIME, caracterele pe mai mulți octeți și codarea ISO.

TIdNetworkCalculator

Una dintre puținele componente Indy care pot fi folosite la construirea aplicațiilor. Calculatorul de rețea poate fi utilizat pentru a efectua calcule pe adrese IP, inclusiv măști de rețea, subrețele, clase de rețea și așa mai departe.

TIdThreadMgrDefault

Componenta oferă în mod implicit gestionarea proceselor secundare. Creat atunci când orice componentă Indy care acceptă managementul proceselor nu are o instanță a clasei TIdThreadManager definită. Componenta oferă doar capabilitățile de bază pentru gestionarea proceselor secundare: le creează și le distruge la cerere.

TIdThreadMgrPool

O componentă de gestionare a proceselor mai avansată decât TIdThreadMgrDefault, deoarece îmbină procesele în loc să le creeze sau să le distrugă la cerere.

TIdVCard

VCard - echivalentul electronic al unei cărți de vizită, poate conține informații personale ale proprietarului, date grafice.

TIdIMFDecoder

Proiectat pentru decodarea mesajelor de pe Internet. Este un descendent al clasei TIdCoder, la fel ca toate celelalte componente ale codificatorului. Clasa TIdCoder efectuează decodarea în conformitate cu standardul de format pentru mesaje text Internet ARPA RFS-822, propus în august 1982, și cu standardul de mesagerie USENET RFC 1036, propus în decembrie 1987.

Componenta extinde clasa TIdCoder pentru a permite detectarea formatului RFS-822 prin contextul antetului, oferind modul de decriptare la recepție și criptarea și decriptarea MIME. Componenta TIdIMFDecoder este utilizată în clasa TIdMessageClient pentru a decoda mesajele primite și transmise.

TIdQuotedPrintableEncoder

QuotedPrintableEncoder vă permite să decriptați text în formatul specificat. Poate servi ca o componentă autonomă cu tipul de codificare specificat, permițând trimiterea mesajelor care conțin noul tip de codificare.

TIdBase64Encoder

Implementează un alt algoritm de criptare care face posibilă transmiterea caracterelor neprintabile.

TIdUUEncoder

Implementează unul dintre primii algoritmi de cifrare, codificarea UU. Uneori folosit atunci când postați articole într-un serviciu de știri.

TIdXXEncoder

Este puțin probabil ca această metodă de criptare să fie folosită vreodată. Este, în esență, aceeași codare UU, dar cu un tabel de criptare diferit.

TIdCoderMD2

Componente cu diverse varietăți ale algoritmului de criptare MD (Message Digest). Toate se bazează pe mixare, sunt unidirecționale și nu au algoritmi de decriptare.

Componentele protocol client și server pot fi utilizate pentru a dezvolta aplicații server și client Internet, împreună cu sau în loc de componente de bază (ClientSocket, ServerSocket) și alte componente din paleta Internet și Fastnet. Componentele Indy nu folosesc arhitectura WebBroker, implementând suport de nivel scăzut pentru protocoale și servicii Internet direct în codul lor sursă (codurile sursă sunt atașate).

TIdConnectionInterceptOpenSSL și TIdServerInterceptOpenSSL

Protocolul SSL - Secure Sockets Layer (Secret Socket Level), care asigură secretul și fiabilitatea comunicării între două aplicații, are două niveluri. La nivelul scăzut al unui protocol de transport stratificat (cum ar fi TCP), SSL este un protocol de scriere și este utilizat pentru a încapsula diferite protocoale de nivel superior. Avantajul SSL este că este un protocol de aplicație independent și un protocol de nivel superior poate fi utilizat peste SSL.

SSL asigură securitatea comunicațiilor, care are trei funcții principale: furnizarea unei conexiuni confidențiale; criptare cu cheie publică (utilizată pentru autentificarea destinatarului); suport pentru fiabilitatea transmisiei datelor.

  • Criptografia simetrică este utilizată pentru a cripta datele (de ex. DES, RC4 etc.).
  • Semnătura digitală este furnizată folosind criptarea asimetrică cu cheie publică (de ex. RSA, DSS etc.).
  • Fiabilitatea comunicațiilor, transportul mesajului include verificarea integrității mesajului prin coduri de corecție MAC, funcții hash securizate (de ex. SHA, MD5 etc.) folosind calcule MAC.

În combinație cu protocolul HTTP și autentificarea serverului, protocolul SSL asigură funcțiile de criptare necesare și menține în continuare conexiunea stabilită prin reautentificarea serverului Web etc. Este important să înțelegeți că SSL securizează comunicarea doar în timpul transferului de date și nu este un substitut pentru alte mecanisme de securitate.

Componentele TIdConnectionInterceptOpenSSL și TIdServerInterceptOpenSSL furnizează atât conexiuni pe partea client, cât și pe partea server, în conformitate cu protocolul SSL. Trebuie remarcat faptul că componentele TIdConnectionInterceptOpenSSL și TIdServerInterceptOpenSSL sunt disponibile numai în Delphi 6, dar nu și în Kylix. Acest lucru se datorează complexității protocolului, care în cazul unei implementări Windows se bazează pe funcțiile sistemului de operare.

Exemple de utilizare a componentelor Indy pot fi găsite în directoarele /Delphi6/Demos/Indy. În total, biblioteca Indy în versiunea 8.0 conține 69 de componente. Se precizează că în versiunea 9.0 biblioteca specificată va conține 86 de componente. Toate componentele sunt unificate și incluse atât în ​​Delphi 6, cât și în Kylix, ceea ce le permite să fie folosite pentru a dezvolta aplicații multiplatforme. Toate componentele Indy acceptă multithreading.

Componentele Indy implementează aproape toate funcționalitățile disponibile în componentele Internet și Fastnet, ceea ce este prezentat clar în tabel.

Componente Componente Indy Scopul componentelor
1 TserverSocket, TClientSocket TIdTCPserverSocket, TIdTCPClientSocket Interacțiunea a două computere (client și server) folosind protocolul TCP/IP
2 TNMDayTime TIdDayTime, TIdDayTimeServer Solicitare server pentru ora curentă
3 TNMEcho TIdEcho, TIdEchoServer Folosit pentru a comunica cu serverul de răspuns
4 TNMFinger TIdFinger, TIdFingerServer Folosit pentru a obține informații despre utilizator de la un server de căutare pe Internet
5 TNMFTP TIdFTP, TIdTrivialFTP, TIdTrivialFTPServer Oferiți transfer de fișiere folosind protocolul FTP
6 TNMHTTP TIdHTTP, TIdHTTPServer Utilizați protocolul HTTP pentru schimbul de date
7 TNMMsgServ, TNMMsg Folosit pentru a trimite mesaje text simple de la client la server
8 TNMNNTP TIdNNTP, TIdNNTPServer Sprijină schimbul de date cu serverul de știri
9 TNMPOP3 TIdPOP3 Folosit pentru a primi e-mailuri de la un server de e-mail folosind protocolul POP3
10 TNMSMTP TIdSMTP Folosit pentru a trimite e-mailuri prin intermediul unui server de e-mail pe Internet
11 TNMStrm, TNMStrmServ Transferați datele binare scrise în flux folosind protocolul TCP/IP
12 TNMUDP TIdUDP, TIdUDPServer Trimiteți date utilizând protocolul UDP
13 TpowerSock, TNMGeneralServer Clase încapsulate ca componente care sunt de bază pentru scrierea propriilor clienți (Powersock) și servere (NMGeneralServer)
14 Procesor TNMUU TIdUUEncoder, TIdUUDecoder Convertiți fișierele binare în MIME sau UUENCODE
15 TNMURL Convertește șirurile în format HTML și le recodează înapoi

Excepție fac clase precum TNMMsgServ, TNMMsg, TNMStrm, TNMStrmServ, TpowerSock, TNMGeneralServer, TNMURL, care fie implementează protocoale învechite, fie au funcționalitate implementată într-un grup mare de clase alternative.

Cu toate acestea, spre deosebire de predecesorii săi - componente Internet și Fastnet, Indy are componente mai bogate de server și de transcodare și criptare a datelor, precum și suport de autentificare (paleta Indy Misc). După cum puteți vedea din tabelul de mai sus, principalele protocoale și servicii sunt furnizate nu numai de client, ci și de componentele serverului. Acestea sunt serviciile de timp, răspuns, informații despre utilizator, precum și HTTP, NNTP, UDP și chiar cea mai simplă versiune de FTP.

Câteva exemple de utilizare a componentelor Indy

În componentele Indy ale Delphi, adresa IP este definită în proprietatea Host, de obicei numai în aplicațiile client. Componentele găzduite de server au metode pentru a porni sau opri interogarea portului corespunzător - de exemplu, modificarea proprietății Active a componentei IdTCPServer pornește sau oprește interogarea portului corespunzător. După stabilirea unei conexiuni între client și server, transferul de date poate începe.

Componentele Indy pun foarte mult accent pe securitatea și fiabilitatea datelor. De exemplu, componenta IdTCPClient are metodele Conectare și Deconectare. Aplicarea unei tehnici de programare ca în codul de mai jos din partea clientului:

cu TCPClient începe Conectarea; încercați lstMain.Items.Add(ReadLn); în cele din urmă Deconectați-vă; Sfârșit; Sfârșit;

și folosind proprietatea Connection, transmisă ca parametru instanței AThread a clasei TIdPeerThread, din partea serverului:

cu AThread.Connection do begin WriteLn("Salut de la serverul Basic Indy Server."); Deconectat; Sfârșit;

vă puteți baza fie pe executarea obișnuită a conexiunii, fie pe gestionarea corectă a erorilor.

Acordați atenție metodelor ReadLn și WriteLn ale claselor corespunzătoare - seamănă cu instrucțiunile standard Pascal I/O. Acesta este un tribut adus tehnicii de programare UNIX, unde majoritatea operațiunilor de sistem sunt efectuate prin citirea și scrierea în fișierele corespunzătoare.

La fel ca și componentele Fastnet, clasele de componente Indy au evenimente care pot fi folosite pentru a organiza managementul evenimentelor. De exemplu, puteți organiza afișarea unui mesaj pe formular atunci când vă conectați la un client:

procedura TForm1.IdECHOServer1Connect(AThread: TIdPeerThread); begin lblStatus.caption:= „[ Servire client ]”; Sfârșit;

Indy furnizează componente care implementează protocoale cu părți client și server care sunt unice pentru această bibliotecă. Componentele TIdGopherServer și TIdGopher, datorită metodelor GetExtendedMenu, GetFile, GetMenu, GetTextFile pe partea client și ReturnGopherItem, SendDirectoryEntry pe partea serverului, ajută la vizualizarea fișierelor de diferite tipuri, inclusiv cele marcate ca ascunse, precum și directoarele de pe un computer la distanță (similar cu cel ca comanda dir *.* îl face în sistemul de operare MS-DOS).

Folosind componentele IdSMTP și IdMessage, vă puteți crea cu ușurință propria aplicație Web care poate trimite e-mail folosind protocolul SMTP.

În același timp, clasa IdMessage (una dintre cele 23 de componente din pagina Indy Misc) este responsabilă de generarea unui mesaj, care decurge din numele acestuia, iar IdSMTP este responsabil de stabilirea unei conexiuni la serverul de mail.

Tehnologia folosită în Indy folosește blocarea citirilor și scrierilor. Orice operațiune de conectare utilizată în Indy așteaptă finalizarea conexiunii. Când lucrați cu componentele client Indy, de obicei trebuie să faceți următoarele:

  • solicita o conexiune la server;
  • face cereri către server pentru citire și scriere (în funcție de tipul de server, pasul se execută o dată sau se repetă de mai multe ori);
  • închideți conexiunea la server și deconectați-vă.

Componentele lui Indy sunt concepute pentru a oferi un nivel foarte ridicat de abstractizare. Subtilitățile și detaliile stivei TCP/IP sunt ascunse de programator, astfel încât acesta să se poată concentra asupra sarcinii în cauză.

Următorul exemplu mic arată o sesiune tipică client bean:

cu IndyClient, începeți Host:= "zip.pbe.com"; // Gazda de apelat Port:= 6000; // Port pentru a apela serverul pe Connect; încercați // Codul dvs. ajunge aici în sfârșit Deconectați; Sfârșit; Sfârșit;

În exemplu, chiar dacă conexiunea la server nu este stabilită, conexiunea se va încheia grațios datorită utilizării instrucțiunii try-finally.

Componentele serverului Indy descriu o varietate de modele de server pe care le puteți utiliza în funcție de nevoile și protocolul dumneavoastră.

TIdTCPServer este componenta serverului cel mai frecvent utilizată, care creează un proces secundar care este independent de procesul principal al aplicației. Procesul creat așteaptă cererile primite de la potențiali clienți. Pentru fiecare client la care răspunde, este creat un proces secundar individual. Evenimentele care apar în timpul procesului de întreținere sunt legate de contextul proceselor respective.

Cu alte cuvinte, pentru fiecare conexiune client, clasa TIdTCPServer folosește un fir secundar unic apelând handlerul de evenimente OnExecute al acelui fir. Parametrul formal al metodei OnExecute este o referință la o instanță a clasei Athread corespunzătoare firului creat. Proprietatea Connection a acestei clase este o referință la clasa TIdTCPConnection, care este instanțiată pentru a procesa o cerere client. TIdTCPConnection acceptă citirea și scrierea printr-o conexiune, precum și stabilirea și încheierea unei sesiuni.

Protocolul UDP funcționează fără a stabili mai întâi o conexiune cu serverul (fiecare pachet trimis este un set de date independent și nu face parte dintr-o sesiune sau o conexiune mare). În timp ce TIdTCPServer generează fire separate pentru fiecare conexiune, TIdUDPServer utilizează fie un fir principal, fie un singur fir secundar care gestionează toate cererile de protocol UDP. Când TIdUDPServer este activ, este creat un fir pentru a asculta pachetele UDP primite. Pentru fiecare pachet primit, evenimentul OnUDPRead este declanșat fie pe firul principal, fie în contextul firului de ascultare, în funcție de valoarea proprietății ThreadedEvent. Când ThreadedEvent evaluează False, evenimentul este ridicat pe firul principal, altfel pe firul de ascultare. În timp ce evenimentul este procesat, alte operațiuni de server sunt blocate. Prin urmare, este important să vă asigurați că procedurile OnUDPRead rulează cât mai repede posibil.

Dacă trebuie să creați o nouă aplicație client client pentru un server existent utilizând un protocol existent, sarcina dvs. este doar să dezvoltați și să depanați aplicația client. Totuși, atunci când trebuie să dezvoltăm atât aplicații client, cât și aplicații server folosind un protocol existent sau nou, ne confruntăm cu clasica problemă „găină și ouă”. De unde să începem programarea - de la client sau de pe server?

Evident, în final, trebuie să fie create atât clientul, cât și serverul. Pentru multe aplicații, în special pentru cele care utilizează un protocol bazat pe text (cum ar fi HTTP), este mai ușor să începeți construirea unei aplicații prin proiectarea serverului. Și pentru depanarea acestuia există un client convenabil care există deja. Aceasta este o aplicație de consolă Telnet care este disponibilă atât pe Windows, cât și pe UNIX.

Dacă tastați comanda consolei telnet 127.0.0.1 80 cu adresa IP a computerului local și numărul de port implicit 80 utilizat de serverele Web, aplicația va răspunde cu textul prezentat în Fig. 6 pentru Windows 2000 și IIS 5.0.

Pentru a crea cel mai simplu server folosind componente Indy, trebuie să:

Dacă trebuie să proiectați un server care nu numai că își informează corect clienții când conexiunea este întreruptă, dar le oferă și informații despre condițiile de eroare care au apărut, utilizați instrucțiunea try-except în loc de try-finally - de exemplu, ca prezentate în exemplul următor:

procedura TDataModule1.IdTCPServer1Execute(AThread: IdPeerThread); vars: String; începe cu AThread.Connection nu încearcă try s:= ReadLn; // Efectuați sarcina serverului aici // dacă nu se ridică nicio excepție, // scrieți răspunsul serverului WriteLn(s); cu excepția e: Excepția începe WriteLn(e.Message); final; //on sfârşit; //încearcă, cu excepţia în cele din urmă Deconectare; sfârşit; sfârşit;

Acest mic exemplu demonstrează pașii pentru a crea un server de text simplu, precum și cum să-l depanați.

Serverul descris mai sus este un exemplu tipic de organizare a calculului distribuit modern.

Caracteristici de creare a aplicațiilor cu mai multe niveluri

Recent, mai multe servere au fost folosite din ce în ce mai mult pentru a satisface solicitările clienților. Un server de acest tip, după ce a primit o cerere de client și a pregătit-o parțial pentru procesarea ulterioară, contactează un alt server și îi trimite o cerere sau cereri transformate. Serverul de al doilea nivel poate, la rândul său, să comunice cu alte servere. Astfel, putem vorbi despre o arhitectură de server cu mai multe niveluri.

În continuare, vom crea un server de acces la date al cărui scop este returnarea datelor din baza de date. Acest server, totuși, nu citește sau scrie direct în fișierele bazei de date. În schimb, contactează serverul bazei de date în căutarea datelor solicitate de client.

Deci, începem să dezvoltăm o aplicație cu o arhitectură cu trei niveluri. Pentru a crea un server de baze de date folosind componente Indy, trebuie să:

  1. Creați un nou proiect.
  2. Plasați o instanță a componentei TIdTCPServer din paleta Indy Servers pe forma principală a proiectului.
  3. Setați proprietatea DefaultPort a unei instanțe a clasei TIdTCPServer1 la 6001 (se recomandă valori mai mari pentru a evita numerele de porturi duplicate pentru diferite aplicații) și proprietatea Active la true.
  4. Adăugați un nou modul la proiect selectând Fișier | Nou | Modulul de date și plasați instanțe ale componentelor SQLConnection și SQLDataSet pe acesta din fila dbExpress din paleta de componente.
  5. Setați proprietatea ConnectionName a clasei SQLConnection la IBLocal și LoginPrompt la False. Dacă nu ați configurat IBLocal pentru baza de date employee.gdb, urmați mai întâi această procedură.
  6. Setați proprietatea SQLConnection a clasei SQLDataSet la SQLConnection1 și setați proprietatea CommandText la instrucțiunea SQL: selectați CUSTOMER, CONTACT_FIRST, CONTACT_LAST din CUSTOMER unde CUST_NO = :cust.

Adesea, o inovație provoacă sfârșitul alteia. Până de curând, Blogger rula un motor de căutare bazat pe căutările personale Google. Am avut și suntem încă disponibile widget-ul " Caseta de căutare", dar el nu funcționează. În schimb, Google a introdus în liniște o simplă căutare pe blog pentru Blogger. Pe de o parte, aceasta este o simplificare și pierdere a soluției ajax și, pe de altă parte, un mecanism care este de înțeles și urmărit în același Google Analytics.

  • Cum se creează un formular de căutare Blogger

Widget de căutare blog pentru Blogger

Pentru început, lista de widget-uri de pe Blogger are încă o „Căutare” care vă permite să căutați blogul, blogroll-ul și alt conținut pe care îl specificați pe baza motorului de căutare personalizat Google.


Widgetul caseta de căutare nu funcționează

Dar nici pe blogul oficial Google, în browserul Chrome, cu AdBlock dezactivat, pentru cuvântul cheie exact, nu dă nimic și nu este clar dacă acest lucru se va remedia în viitor sau nu. Problema a apărut de mult timp, iar rezultatele soluției sale nu sunt vizibile.

De asemenea, trebuie menționat aici că căutarea personalizată Google funcționează într-un mod securizat, folosind protocolul HTTPS, pentru a asigura confidențialitatea datelor utilizatorilor. Pe de o parte, acest lucru este bun, dar pe de altă parte, este imposibil să afli ce căutau utilizatorii pe blog și acest lucru este cu adevărat interesant.

Căutare pe site de Google pentru Blogger

De fapt, Google a acționat cu viclenie. Nu au rezolvat nimic, ci au scris un cod JavaScript folosind biblioteca jQuery care redirecționează la căutarea Google.

$(".searchBox input").on("keypress", function(ev) ( dacă (ev.which == 13) ( window.location.href = "https://www.google.com/search?q =site%3A" + window.location.hostname + "%20" + encodeURIComponent ($(this).val()); ) ));

În acest caz, codul HTML al formularului de căutare care urmează să fie inserat într-un widget HTML/JavaScript obișnuit poate arăta astfel:

Astfel, utilizatorul introduce o interogare de căutare în formularul de căutare, dă clic pe butonul Enter, iar scriptul îl redirecționează către pagina cu rezultatele căutării Google pentru interogare:

site:[nume domeniu] [interogare de căutare]

Soluția este destul de universală, dar nu uitați că necesită jQuery!

Cum funcționează căutarea pe blog pentru Blogger?

Ca atare, motorul de căutare Blogger a existat și a fost folosit pentru listări de pagini de arhivă de mult timp. Dacă aveți suficiente postări pe blogul dvs., faceți clic pe linkul „Anterior” și veți fi direcționat către o pagină cu o adresă URL ca aceasta:

http://www.?updated-max=2013-11-21T08:00:00%2B02:00&max-results=7

De remarcat că în fișierul implicit (implicit) robots.txt, folderul /search este interzis la indexare, cu următorul rând:

Nu permite: /căutare

Este corect. În caz contrar, veți obține o mulțime de duplicate de pagini, ceea ce poate duce la consecințe nu cele mai plăcute.

Principalul lucru este că acum se caută blogul prin această adresă, specificând parametrul q în care se transmite o solicitare care reprezintă expresia de căutare, de exemplu:

http://www.?q=php

În acest caz, se va face o căutare a mesajelor în care este prezentă expresia „php”. Este de remarcat faptul că aici nu există o morfologie, adică. În curs de desfășurare caută după potrivirea exactă cu fraza specificată.

Cum se creează un formular de căutare pe blog pentru Blogger?

Avem mecanismul de care avem nevoie. Ideea este mică - să inserați un formular de căutare pe blog. Pentru a face acest lucru, vom folosi un widget HTML/JavaScript care vă permite să adăugați aplicații sau alt cod de la terți pe blogul dvs., de ex. noi cei dragi.


Widget html/javascript pentru Blogger

Du-te doar la " Proiecta» de pe blogul dvs. și faceți clic pe linkul « Adăugați un gadget» în secțiunea de care aveți nevoie. În fereastra care se deschide, găsiți și faceți clic pe „ semnul plus» pentru gadgetul HTML/JavaScript. În fereastra care se deschide, în câmpul „Titlu”, introduceți titlul formularului, de exemplu: Căutare blog, - iar în câmpul „Conținut”, introduceți următorul cod HTML:

Evident, în loc de www.site va trebui să înregistrați numele de domeniu al blogului dvs. De asemenea, trebuie menționat că am oferit cea mai simplă și mai funcțională versiune, pe care o puteți schimba și aranja după bunul plac. Faceți clic pe butonul salva».

Rezultatul căutării arată astfel pe blogul meu:


Rezultatul căutării Blogger

Trebuie remarcat faptul că interogarea nu rămâne în câmpul formularului de căutare și nu există nicio evidențiere a cuvintelor cheie. Cu toate acestea, este mai bine decât nimic. Ei bine, dacă se dorește, aceste probleme pot fi eliminate folosind același JavaScript.

Rezumând

Crearea formularului de căutare în sine și adăugarea acestuia pe blog prin intermediul gadgetului HTML/JavaScript nu este ceva complicat. În articol, am dat versiunea cea mai simplă, dar destul de funcțională, pe care o folosesc și eu. Asta e tot pentru mine. Multumesc pentru atentie. Noroc!

la 8:00 Editați mesajul 5 comentarii

Popularitatea internetului continuă să crească. Astăzi, conform experților, aproximativ 14% din populația cu vârsta peste cincisprezece ani utilizează serviciile sale (adică aproximativ 694 de milioane de oameni). Mai mult, atunci când se evaluează audiența Rețelei Globale, nu sunt luați în considerare utilizatorii care au acces la internet mobil și vizitează internet cafenele, cluburile și sălile de clasă. Poziția de lider în ceea ce privește numărul de utilizatori de Internet este încă ocupată de Statele Unite ale Americii (152 de milioane de oameni), urmate de China (72 de milioane) și Japonia (52 de milioane) închide aceste trei.

Trebuie remarcat faptul că dinamica depășitoare a lumii a treia. În prezent, doar un sfert din toți utilizatorii de internet trăiesc în Statele Unite, în timp ce în urmă cu zece ani ponderea lor era de peste două treimi. Cu toate acestea, nu se poate argumenta că Internetul a devenit la fel de popular în întreaga lume. Deși este cel mai frecvent în SUA, Europa și Asia. Dacă vorbim despre țările din America Latină, atunci acolo nu este atât de popular. De exemplu, Brazilia, care deține poziția de lider în ceea ce privește numărul de utilizatori de Internet în America Latină, are doar 13,1 milioane de conexiuni la Internet. Iar un continent precum Australia este doar pe locul 15 (9,7 milioane de utilizatori).

Dacă vorbim de Europa, atunci Germania și Marea Britanie sunt lideri în numărul de utilizatori de Internet, care ocupă, respectiv, locurile cinci și, respectiv, patru în clasamentul mondial (32 și 30 de milioane de utilizatori). În ceea ce privește cele mai populare resurse de internet, primele trei locuri sunt acordate site-urilor unor companii precum Microsoft (538,6 milioane de vizite), Google (495,8 milioane) și Yahoo! (480,2 milioane). Acesta este urmat de popularul schimb de internet american eBay, care ocupă a patra poziție (269 de milioane de vizite).

Dacă vorbim despre tipul de conținut care atrage utilizatorii de internet astăzi, atunci în primul rând ar trebui să numim bloguri, a căror popularitate crește cu pasi. Amintiți-vă că un blog sau un weblog ( din engleza. blog, jurnal web - un jurnal de rețea virtuală sau un jurnal de evenimente) este un site web, al cărui conținut principal este adăugat în mod regulat intrări, imagini sau alt conținut multimedia. După componența autorilor, blogurile pot fi personale, de grup (corporate, club etc.) sau publice (deschise); după conținut - personal (deschis sau închis), tematic sau general. Blogurile pot fi combinate în rețele în funcție de caracteristici tematice sau alte criterii. Popularitatea blogurilor ca mijloc de comunicare online este în prezent mult mai mare decât cea a e-mailului, a grupurilor de știri, a forumurilor web și a camerelor de chat. Mai mult, jurnalele web sunt uneori atât de strâns legate între ele încât unii utilizatori le consideră deja un fel de inteligență colectivă a comunității rețelei. În Rusia, sistemele de blogging precum LiveJournal.com, Liveinternet.ru și Diary.ru sunt cele mai cunoscute. Dar Livejournal.com rămâne liderul în popularitate în rândul găzduirii blogurilor din Runet - conform statisticilor Yandex, este semnificativ înaintea omologilor săi ruși Liveinternet.ru și Diary.ru.

După cum știți, un utilizator modern de internet caută de obicei informații pe Web folosind serviciile de căutare. Dar, întrucât căutarea blogurilor cu instrumente standard de căutare, datorită specificului creării, formatelor și software-ului suport, este oarecum dificilă, a fost nevoie de servicii de căutare specializate care să caute exclusiv pe bloguri.

De exemplu, specialiștii de la Universitatea din Amsterdam au efectuat o analiză amănunțită a jurnalelor motorului de căutare Blogdigger.com pentru mai 2005 (adică 1,2 milioane de interogări), studiind-o din diferite unghiuri: scopul interogărilor de căutare, subiectul lor și utilizatorul. comportament. S-a dovedit că căutarea blogurilor este semnificativ diferită de căutarea obișnuită pe Internet. Aici, 52% din toate interogările de căutare (și după filtrarea „gunoiului” - și toate 78%) sunt nume proprii - acestea sunt numele de persoane, mărci de produse, nume de companii, nume de orașe etc. În plus, interogările tematice generale (lingvistică, umor, islam) sunt foarte populare, cu ajutorul cărora oamenii caută bloguri pe o anumită temă. Cu toate acestea, atunci când utilizatorii caută bloguri, aceștia se comportă cam la fel ca pe motoarele de căutare obișnuite: sesiuni scurte, în care atenția este acordată în principal primelor rezultate ale căutării.

(http://www.technorati.com/)

Până de curând, cel mai popular serviciu de căutare pe bloguri din întreaga lume a fost Technorati, care a oferit posibilitatea de a căuta în 17 milioane de agende. La sfârșitul lunii iulie a acestui an, acest cel mai mare motor de căutare pe blog a actualizat interfața și a făcut, de asemenea, unele modificări în nucleu pentru a accelera procesarea interogărilor.

Printre principalele inovații se numără apariția panourilor de navigare Discover, Most Popular și Favorite. Discover este un director tematic de bloguri, Cele mai populare este o evaluare, iar în Favorite un vizitator poate adăuga bloguri preferate și, opțional, poate selecta doar dintre ele.

În ceea ce privește modificările aduse motorului de căutare, postarea de blog de management al Technorati despre procesarea mai rapidă a interogărilor și detectarea mai precisă a linkurilor blogului. În viitorul apropiat, este planificată implementarea localizării limbii, a indexării mai rapide, precum și a statisticilor detaliate pentru întreaga blogosferă globală.

Potrivit conducerii motorului de căutare, au fost necesare modificări în lucrare, deoarece site-ul nu mai putea oferi pe deplin uzabilitate. Potrivit Technorati, dimensiunea blogosferei crește exponențial și se apropie deja de 50 de milioane de bloguri, ceea ce, bineînțeles, a fost și unul dintre principalele motive ale schimbărilor în serviciu.

Google Blog Search ( )

Cel mai popular portal de căutare, Google, și-a extins și capacitățile de căutare cu un modul de căutare specializat în jurnalele de pe Internet. Arhiva Google Internet va include toate blogurile, nu doar cele publicate anterior pe site-ul dedicat Google Blogger.

Serviciul este în prezent în versiune beta și numai blogurile publicate din iunie 2005 pot fi căutate. Cu toate acestea, potrivit reprezentanților companiei, se lucrează la includerea acelor jurnale care au fost publicate anterior pe internet. Cu ajutorul noului motor de căutare se vor putea găsi bloguri ale autorului sau după textul publicat al mesajului. În plus, Google va indexa în mod activ toate blogurile care au un sistem automat de urmărire a modificărilor paginilor web.

Creatorul Technorati a publicat o scrisoare pe blogul companiei sale după căutarea Google pe blog, salutând intrarea Google în comunitatea de blogging. El scrie că decizia portalului de căutare de a include bloguri în arhivele sale a arătat că Google ia în serios acest fenomen relativ nou al internetului.

De asemenea, observăm că recent sistemul Google a început să mențină un blog corporativ în limba rusă. Prima postare care a apărut pe acest blog a fost scrisă de șeful diviziei din Rusia a Google, Vladimir Dolgov. Blogul rusesc este condus de angajații Google vorbitori de limbă rusă pentru un public vorbitor de limbă rusă. Blogul se află la: GoogleRussiaBlog.blogspot.com. Divizia rusă a companiei speră că bloggerii vor sprijini blogul corporativ Google trimițându-și dorințele despre informațiile pe care și-ar dori să vadă în el.

Desigur, Google nu este nicidecum prima companie care a decis să includă bloguri în căutarea sa, dar această decizie poate fi considerată cu adevărat semnificativă, deoarece acest portal este un lider clar în rândul motoarele de căutare de pe Internet. Rețineți că, chiar înainte de crearea unui serviciu de căutare pe bloguri, Google a achiziționat o companie care a contribuit la transformarea jurnalelor web într-un fenomen la nivel mondial (cel mai popular motor de căutare a cumpărat Pyra și, odată cu acesta, tehnologia din spatele sistemului Blogger - software și un site care acceptă milioane de bloguri din întreaga lume).

Strategia Google este să se asigure că utilizatorii obțin tot ce își doresc de la motorul de căutare, indiferent de interogare. La urma urmei, de multe ori oamenii caută informații despre ceea ce se întâmplă în acest moment, doresc știri și comentarii proaspete, care uneori pot fi găsite doar în jurnalele web.

Cu toate acestea, utilizatorii sistemului de căutare Google remarcă deja inconvenientul noului motor de căutare. De exemplu, sortarea implicită acolo are loc în mod tradițional în funcție de relevanța solicitării, și nu de timp, ceea ce este valabil mai ales pentru bloguri. La urma urmei, într-o căutare pe blog, principalul lucru este eficiența, nu relevanța.

Lucrați cu bloguri și alte motoare de căutare internaționale. De exemplu, în secțiunea de știri a Yahoo! există o nouă opțiune de căutare - în știri și bloguri. Lista blogurilor în care apare expresia cheie dată va fi afișată într-o fereastră separată, lângă fluxurile de știri ale celor mai mari agenții de presă. Într-adevăr, în ciuda faptului că bloggerii nu sunt jurnaliști profesioniști, ei depășesc uneori mass-media atât ca viteză, cât și în detaliu de descriere. În plus, jurnaliştii nu sunt capabili fizic să acopere toate evenimentele. Totuși, blogurile încă nu garantează autenticitatea, așa că Yahoo! nu a amestecat informații de la ei și din 6,5 mii surse de știri responsabile.

Pe lângă postările pe blog, utilizatorii motoarelor de căutare pot vizualiza fotografii amatori ale evenimentelor pe Flickr, un site de partajare a instantaneelor ​​deținut de Yahoo!. Imaginile de după atentatele de la Londra sau uraganul Katrina din Statele Unite au atras în special mulți vizitatori.

Cunoscuta resursă de căutare Ask.com (http://www.ask.com/), deținută de IAC/InterActiveCorp, a dobândit recent și opțiunea de a căuta informații în bloguri. Noul serviciu se numește Bloglines. În același timp, reprezentanții resursei observă că descendenții lor sunt semnificativ diferiți de alte servicii similare care funcționează ca motoare de căutare tradiționale și filtrează spam-ul, care a început recent să devină pur și simplu rampant în bloguri.

Utilizatorii vor putea să salveze căutările și să-și partajeze rezultatele altora. De asemenea, vor putea posta propriile căutări pe site-uri precum Bloglines și Digg. De asemenea, compania nu intenționează să se limiteze la introducerea unui nou serviciu doar pe resursa sa de căutare, care a fost recent reproiectată complet, și urmează să integreze noi tehnologii în Bloglines.

Căutare pe blog pe Yandex ( )

Căutarea pe bloguri în partea rusă a internetului nu este implementată mai rău decât cea internațională. Cea mai bună căutare pentru bloguri în Runet a fost organizată de portalul de căutare Yandex. Mai mult, Yandex a căutat de multă vreme toate formatele RSS (RSS este o familie de formate XML concepute pentru a descrie fluxurile de știri, anunțurile de articole și modificările blogului) și un flux de știri pentru a porni. Și este puțin probabil ca Google să aibă timp să indexeze blogurile așa cum face Yandex astăzi.

Și recent, Yandex și-a îmbunătățit serviciul de căutare pe blog - acum pagina principală a site-ului conține astfel de indicatori ai blogosferei, cum ar fi subiecte fierbinți, bloguri populare și găzduire de bloguri.

Căutarea pe blog, ca un fel de instrument pentru navigarea în opinia publică pe Internet, vă permite acum să explorați starea de spirit a utilizatorilor și a rețelei ruse. La cerere, sunt găsite nu numai înregistrări, ci și fluxuri, iar relevanța căutării a fost îmbunătățită semnificativ. În plus, datorită apariției unei copii salvate, utilizatorul poate vizualiza textul complet al intrărilor direct pe Yandex fără a face clic pe linkuri. Căutarea avansată vă permite să căutați separat în bloguri și forumuri pe categorii, precum și să găsiți intrări după linkurile menționate în acestea.

Astăzi, baza de date de căutare a serviciului de căutare pe bloguri lansat de Yandex în decembrie 2004 conține peste 800.000 de agende online în limba rusă, iar în fiecare zi acest serviciu procesează 100-160.000 de intrări noi. În total, Yandex cunoaște mai mult de 45 de milioane de intrări în bloguri și forumuri.

Încercarea de a lucra cu bloguri și alte motoare de căutare rusești. De exemplu, la sfârșitul anului 2005, a fost lansat serviciul de comunicare „Rambler Planet” (http://planeta.rambler.ru) - un singur bloc de servicii de comunicare portal. Noul proiect Rambler este poziționat ca un mijloc de a crea propria reprezentare a unui utilizator de internet pe Web, al cărei nucleu este un jurnal multimedia. În acest jurnal, puteți publica și vizualiza nu numai mesaje text și fotografii, ci și videoclipuri. Mai mult, Planet este integrat cu alte resurse ale portalului - Rambler Photo, Rambler Group și Rambler Vision. Și la începutul acestui an, în sistemul de jurnal multimedia Rambler Planet a apărut o nouă caracteristică - utilizatorii pot acum organiza comunități tematice. Vă rugăm și încă o funcție nouă - posibilitatea publicării prin SMS. Acum puteți face înregistrări în jurnalul dvs. online folosind telefonul mobil. În curând va fi posibil să se conecteze RSS și agende de la alte sisteme și să se organizeze evaluări. Toate comunitățile care există astăzi sunt adunate în catalogul tematic al Rambler.

Blogus rusesc ( )

Pe lângă Yandex, căutările în blogurile rusești sunt efectuate și pe site-ul web al proiectului intern Blogus. Desigur, acest proiect este departe de acoperirea completă a blogosferei pe care Technorati sau Yandex o au, dar puteți găsi informații interesante și acolo. Serviciul încă există în versiune beta, interfața sa este în continuă îmbunătățire, iar în viitorul apropiat promite să devină un instrument de căutare destul de simplu, funcțional și convenabil, destinat în mod special bloggerilor. În această etapă, dezvoltatorii Blogus plănuiesc să păstreze și să indexeze nu mai mult de 10.000 dintre cele mai populare bloguri. Astfel, dacă Yandex vă permite să efectuați cea mai largă căutare, atunci Blogus va deveni adăugarea sa tematică mai restrânsă, ținând cont de autoritatea unui anumit blog.

Special pentru site

Vladimir Gubailovsky

Google a lansat o căutare pentru agende sau bloguri online. Căutarea se efectuează nu numai pe serviciul oferit de Google însuși - serviciul Blogger, ci și pe toate celelalte bloguri care oferă informații despre modificări sub formă de actualizări. Astăzi, indexul de căutare Google include intrări de blog care datează din iunie 2005, dar Google intenționează să indexeze și intrări mai vechi. Cu ajutorul serviciului, puteți găsi jurnalul online dorit, autorul sau o intrare separată, și într-un interval cronologic selectat.

Caută în blogosferă

Nu e de mirare că Google a lansat căutarea pe blog. Este surprinzător faptul că o companie cunoscută pentru ochiul său ascuțit pentru inovație și care lansează noi servicii și instrumente aproape în fiecare săptămână în ultima perioadă, nu a oferit utilizatorilor acest serviciu special - căutare pe bloguri de atâta timp.

Blogurile au propriile lor specificuri care disting acest tip de site de toate celelalte și, prin urmare, căutarea pe blog este diferită de căutarea tradițională. Pentru comparație, Yandex și-a lansat căutarea pe blog în decembrie 2004. Iar Google pur și simplu nu a văzut specificul pe care îl poartă blogosfera (acest termen s-a impus deja ca o definiție a tuturor blogurilor care există pe Web).

Potrivit Technorati, numărul total de bloguri de pe Web a ajuns deja la 16,1 milioane, numărul dublându-se la fiecare cinci luni - un nou blog este creat la fiecare 5-7 secunde. Blogurile - jurnale online - sunt scrise și publicate astăzi atât de persoane fizice, cât și de companii importante. Mai mult, cele mai recente intrări cronologice de blog sunt de interes principal. Și motoarele de căutare mari, chiar și cele rapide precum Google, își actualizează indecșii destul de încet - pur și simplu nu observă specificul blogului și indexează totul. Motoarele de căutare tradiționale, cum ar fi Google sau Yahoo, își construiesc indici pentru căutări web, traversând Web-ul cu crawlere automate care colectează tot ce pot din toate paginile web pe care le întâlnesc. Nu este neobișnuită o situație în care știrile de anul trecut sau chiar mai vechi apar pe prima pagină a căutării - motorul de căutare este departe de a fi întotdeauna bine orientat în timp. Acest lucru este destul de natural - trebuie să funcționeze cu data actualizării paginii, iar pagina ar putea fi actualizată fără nicio modificare a conținutului. Un motor de căutare nu poate garanta data oricărei pagini de pe Internet.

„Parveniți” pe piața de căutare

Decalajele de timp și pauzele cronologice în blogging, care sunt comune în motoarele de căutare tradiționale, au oferit motoarelor de căutare mai mici o șansă. Aceste servicii s-au concentrat pe indexarea blogurilor cât mai repede posibil. Ei încearcă să urmărească o actualizare a blogului în câteva minute pentru a face aceste modificări să poată fi căutate. Serviciile noi, dintre care unele au mai puțin de un an, desigur, se confruntă cu o mulțime de probleme. Tehnologia este încă în evoluție, iar companiile doar află cele mai bune modalități de a urmări și sorta blogurile. Unele servicii pierd o mulțime de bloguri, altele preiau site-uri care arată accidental ca bloguri. Pe DayPop. este prezentată o cantitate mică de bloguri - aproximativ 60 de mii, dar aceste bloguri au fost selectate de editorii site-ului ca fiind cele mai interesante din punctul lor de vedere. Site-uri precum Technorati, Feedster, IceRocket (care indexează cel mai bine blogurile rusești până în prezent) și BlogPulse au adunat mult mai multe bloguri, între 15 și 20 de milioane. Rezultatele căutării acestor sisteme oferă mult mai multe rezultate, deseori din surse destul de discrete, dar foarte interesante. În timp ce Technorati și BlogPulse se concentrează exclusiv pe bloguri, Feedster și IceRocket oferă și o opțiune care vă permite să căutați știri din surse tradiționale - fluxuri de știri, ziare online și alți furnizori oficiali de conținut de știri.

În timp ce Google, Yahoo și Microsoft procesează miliarde de pagini, căutarea pe bloguri se concentrează pe 10 până la 20 de milioane de site-uri. Aici, motoarele de căutare folosesc metode care sunt aplicabile numai blogurilor și nu sunt potrivite pentru indexarea site-urilor arbitrare. Potrivit The Wall Street Journal Online, Technorati, de exemplu, se bazează cel mai adesea pe mecanismul „pinging” pentru a monitoriza blogurile. Majoritatea bloggerilor își organizează jurnalele prin servicii precum Blogger sau LiveJournal, care pun automat ping motorului de căutare atunci când un blog se schimbă. CEO-ul Technorati, David Sifry, spune că compania sa are acorduri cu multe companii care oferă găzduire de bloguri (adică un serviciu de găzduire și blogging) - Technorati primește ping înaintea altor motoare de căutare. La primirea unui astfel de mesaj, Technorati își actualizează imediat indexul de căutare. Feedster folosește și monitorizarea ping, dar în plus, colectează actualizări folosind un feed RSS (cum ar fi căutarea pe blogul Google tocmai lansată), în care toate actualizările acumulate sunt emise la intervale regulate. Dar utilizând numai fluxuri RSS și ping-uri de la principalele servicii de blog, puteți pierde acele bloguri importante care există pe cont propriu. Prin urmare, IceRocket folosește și propriul robot de căutare, care ocolește Web-ul și indexează independent blogurile. Un robot de căutare poate distinge un blog de orice alt site - deoarece blogurile au propriile lor diferențe caracteristice. Orice blog are o secvență cronologică de intrări, fiecare intrare conține o dată și un titlu specificate în mod explicit.

Timpul în hiperspațiu

Observatorul științific al Radio Liberty Alexander Sergeev a descris specificul blogurilor astfel: „Împreună cu blogurile, Internetul a venit la vremea sau chiar Timpul. Înainte de bloguri, Internetul era un hiper-spațiu în care timpul lipsea. în fluxurile de știri. , și sunt foarte puține fluxuri de știri în comparație cu întregul volum al Web-ului. Faptul că blogul este asociat în mod necesar cu cronologia intrărilor stabilește o structură foarte specifică, care nu exista înainte de blog."

Google a omis căutarea pe blog, nu a fost primul aici și acum trebuie să ajungă din urmă. Google probabil s-a gândit că, dacă o companie ar avea cel mai bun motor de căutare, ar indexa blogurile la fel de bine ca orice altceva. Dar s-a dovedit că acest lucru nu este în întregime adevărat. Web-ul se schimbă atât de repede încât nici măcar Google, cu toată agilitatea și agilitatea sa, nu mai este suficient de rapid pentru a fi primul peste tot – iar cel mai dureros lucru pentru companie este că a ratat un segment al pieței de căutare. Dacă Google ar fi lansat căutarea pe blog în urmă cu un an, multe dintre companiile care au crescut astăzi pe acest segment de piață pur și simplu nu ar fi apărut.

Recent, așa-numitul „guerrilla marketing”, „crowd marketing”, care are ca scop creșterea masei de link-uri de pe bloguri, forumuri, site-uri de întrebări și răspunsuri și comentarii, câștigă din ce în ce mai multă popularitate. Dacă nu aveți timp să efectuați aceste lucrări, sunt imediat gata să vă recomand băieților de la serviciul Referr (exemplele lor de lucru).

Astăzi, voi vorbi pe scurt despre elementele de bază ale utilizării eficiente a filtrării rezultatelor căutării Google pentru un marketing eficient în mulțime. Acest subiect este de asemenea relevant, deoarece Google ascunde unele dintre filtrele de căutare care erau disponibile anterior.

Vizualizați SERP-urile Google în alte țări

În era SERP-urilor personalizate, a devenit aproape imposibil să vizualizați rapid rezultatele căutării într-o altă țară, așa cum le văd utilizatorii locali. Cu toate acestea, mai există opțiuni.

Algoritm pentru vizualizarea rezultatelor căutării în alte țări

  • accesați modul „Incognito” în Chrome (Ctrl + Shift + N);
  • în bara de adrese, introduceți domeniul Google al regiunii corespunzătoare și /ncr (metoda este învechită și nu funcționează) - această metodă este aplicabilă tuturor regiunilor;
  • este de dorit să comutați limba interfeței browserului în engleză
  • introduceți interogarea necesară și obțineți rezultatul;

Metoda de mai sus nu mai funcționează.

Pentru a verifica emiterea din țara selectată, utilizați un VPN. De exemplu, încorporat gratuit în browserul Opera.

Există o altă modalitate de a vizualiza rezultatele în Google USA - aceasta este utilizarea site-ului aol.com, care se adună la emiterea Google.com. Principalul lucru este să nu uitați să căutați în modul Incognito.

Căutare pe forum Google

Ce face acest filtru? Filtrează rezultatele căutării și le afișează numai pe cele legate de forumuri și liste de întrebări și răspunsuri. Acest filtru este foarte util pentru cei care doresc să crească gradul de conștientizare a mărcii sau a produsului în discuții. Acest lucru este foarte ușor de realizat căutând subiecte despre resursele de informații în care oamenii au nevoie de produsul sau serviciul dvs. Principalul lucru nu este să faci reclamă, ci să ajuți oamenii. Link-ul este doar o completare sau una dintre posibilele soluții la problema utilizatorului.

https://www.google.com.ua/webhp?tbm=dsc - căutați discuții (metodă învechită, Google a eliminat funcționalitatea)

De asemenea, acest filtru are setari mai subtile care te vor ajuta sa gasesti doar subiecte proaspete pe forumuri (zi, saptamana, luna) sau sa lasi rezultate doar din tara in care te afli.

Adăugare: orice interogare de căutare poate fi convertită într-o căutare de discuții prin adăugarea la sfârșitul barei de adrese &tbm=dsc

Google Blog Search

Pentru a limita rezultatele căutării și pentru a vedea numai bloguri, introduceți următoarea adresă

Nou pe site

>

Cel mai popular