Un motor de búsqueda de bricolaje que sería algo utilizable debería funcionar así. Estoy modelando esto en un modelo que construí de Google hace unos años.
Físico
- En primer lugar, necesitas algunos servidores. La cantidad dependerá de cuánto contenido planea indexar
- Necesitarás una conexión a internet
- Deberías tener un firewall
- Debe tener un firewall de aplicaciones web para proteger sus datos. Presentación de los servicios de firewall de aplicaciones web integradas LoadMaster de KEMP
- Necesitará un equilibrador de carga para sus servidores de aplicaciones, tanto el editor web como posiblemente sus servidores de bases de datos, equilibradores de carga, lo que le dará zen a su estrategia de SEO integral.
Aplicaciones: la aplicación web de búsqueda
- Cómo dar redireccionamiento a páginas web, si el sitio web está hecho con HTML
- ¿Cuáles son algunas de las formas en que uno puede usar para atraer tráfico a su blog?
- ¿Quién es la responsabilidad de saber más sobre SEO en una empresa?
- ¿Cuál es el mejor instituto de formación SEO en India?
- ¿Cuáles son las mejores herramientas de SEO para un principiante?
- Nota: la mayoría de las personas piensan que la búsqueda y la clasificación ocurren cuando haces una búsqueda. En realidad ya está hecho. Para que la búsqueda sea tan rápida, la capa de búsqueda solo devuelve los siguientes 10 resultados de una lista que comienza en la posición 1, y la única lógica aplicada es (a) se eliminan las páginas geográficas específicas, (b) las comprobaciones de QDF extraen elementos según una fecha y el rango de tiempo y (c) los datos en tiempo real se extraen de una cola que lo tiene listo para funcionar
- Esencialmente, desea romper la interfaz de usuario HTML de la lógica empresarial y las bases de datos (el índice)
- Me imagino un nivel 3 en el que tienes una aplicación web Apache (o IIS) muy básica que permite al usuario ingresar una consulta de búsqueda y luego dispara la aplicación de búsqueda que envía los resultados a otra segunda interfaz de usuario. De esa manera, si hay una demanda máxima, básicamente puede desconectar los servidores de operación del usuario del servidor de búsqueda en funcionamiento
- La capa de lógica de negocios: la “búsqueda” simplemente debe tener 2 funciones
- Función A: pelar la cadena de búsqueda en una consulta de palabras sin valor (a, the, an, y, it, is) donde se busca cada palabra y una segunda consulta donde se obtiene en diferentes% de completitud. Por ejemplo, una búsqueda de “cuánto cuesta un iphone” sería [mucho o no o iphone o costo] y también [mucho o no o iphone] y [mucho o no o costo]
- La consulta se entrega al siguiente analizador de búsqueda disponible. El analizador de búsqueda se conecta al siguiente servidor de base de datos disponible. aquí es donde entra en juego el equilibrio de carga: si un solo servidor deja de responder, el equilibrador de carga simplemente lo elimina de la cola y conecta el siguiente servidor en buen estado disponible
- El analizador solicita los 10 resultados principales con esas palabras y se le proporciona una lista de ID de clave que coinciden con una URL
- La magia del orden de rango no se establece durante la búsqueda: la búsqueda es el tramo final
Aplicaciones – Lista de rastreo
- Necesita una lista de URL, que debería marcar con las últimas fechas rastreadas, el tiempo de rastreo / velocidad de la página, el estado permitido de robots e índice meta
- También querrás almacenar un rango y una ubicación geográfica y un identificador de idioma
- Sus servidores de rastreo hacen el trabajo inteligente
- La lista de rastreo se compone de una multitud de fuentes, que incluyen: rastreo y procesamiento de archivos y páginas que se encuentran en un servidor, dentro de un archivo (es decir, enlaces de otras páginas), desde URL a las que accede un navegador, una aplicación de barra de herramientas o una página de envío en tu aplicación de búsqueda
- Por último, almacenaría una matriz de lista de las páginas que enlazan con esta página y un valle de esas páginas que a su vez se basa en la cantidad de enlaces que tienen. También puede incorporar algún tipo de función de penalización / spam en este momento
- Entonces tendría una lista de fuentes en tiempo real, por ejemplo, sitios de noticias en los que permite el envío directo de URL (por ejemplo, mire pingomatic para WordPress: ¡Ping-o-Matic!)
- Recuerde que las URL enviadas ahorran tiempo; por lo tanto, si tiene un indicador o protocolo de confianza establecido, las URL confiables se rastrearán automáticamente más rápido, ya que se dedica menos tiempo a la detección. Una vez que lo rastrea, lo marca como rastreado, por lo tanto, si la URL se encuentra durante otro proceso, bueno, a menos que su fecha de actualización no haya pasado, no es necesario volver a rastrearla.
- Entonces tendría un planificador que sería una vista o tabla de esos datos en términos de qué páginas y dominios se priorizan primero
- Necesitaría varios rastreadores si intentara indexar la web o una gran parte de ella
- algunos servidores funcionarán en una lista dedicada: cuando la lista esté completa, volverán al principio
- Otros servidores iniciarán un rastreo basado en minutos, horas o días; de esa forma, el contenido muy popular / autoritario o de uso frecuente se mantiene muy actualizado, y se agregan e indexan rápidamente nuevas páginas.
- El contenido marginal en sitios de baja autoridad podría demorar semanas / meses en rastrearse. Y eso es un poco tramposo pero funciona
Rastreo y procesamiento
- Cada página debe ser solicitada. La marca de fecha incluye una marca de hora de inicio y finalización
- Nuevamente, el equilibrio de carga es útil aquí porque puede enrutar la respuesta del servidor rastreado a un proceso diferente, esencialmente un receptor de archivos HTTP. Debido a que hay muchos servidores lentos y a que muchos otros servidores se vuelven lentos, debido a que aloja demasiados sitios, obstrucción de la red, mala arquitectura, no desea que el solicitante de rastreo se demore, debe enviar miles de millones de URL a los servidores web como peticiones Al divorciarse de la función de solicitud y recepción, elimina los cuellos de botella. Los servidores de recepción de archivos pueden aceptar muchos servidores de respuesta lenta porque la demanda de datos es baja. Se pueden separar otros servidores para servidores altamente receptivos porque alcanzarán rápidamente los recuentos máximos de conexión. Una vez más, los equilibradores de carga distribuirán eso entre esos servidores en función de pesaje, round robin, comprobación de estado
- Otro rastreador usará buenas consultas de directorio de servidor a la antigua para ver si el servidor web muestra archivos y listas de carpetas y creará pseudo URL y los agregará a la lista de rastreo
- Supongo que una vez que la página se guarda en un área de almacenamiento en caché o en etapas, múltiples procesos la toman en lugar de un gran procesador secuencial. A veces puede ver el impacto de esto cuando durante una búsqueda, un resultado contiene más información en su “fragmento” que en una búsqueda un poco anterior
- Cuando se descarga una página, total o parcialmente después de un tiempo de espera establecido en función del tiempo y los reintentos, todas las aplicaciones que escanean, procesan e indexan páginas se atascan en
- Un escáner de idiomas determinará el idioma en función de la búsqueda de un diccionario.
- la página está desprovista de scripts y formatos HTML. Los que se guardan son los que necesita para determinar la relevancia. Es probable que esto incluya el título de la página, el contenido (que es todo texto que no es muy sencillo)
- Un tipo de escáner clave es aquel que buscaría fallas en el código y la seguridad, en cualquier lugar y similares.
- Me imagino que también tendrías un escáner de correo no deseado que solicita una copia y escaneo en busca de cosas muy spam
- Otro analizador crearía una página de búsqueda: contenido eliminado
- Cada aplicación funciona de forma independiente y algunas tardan más que otras (aunque esto realmente es una fracción de segundo)
- Además, cualquier javascript, archivos no html, imágenes, etc. se bloquean automáticamente, incluso si el servidor web remoto / cliente los envía, se enrutan a un puerto diferente que es esencialmente un agujero negro nulo o digital.
- Me imagino que los servidores que reciben archivos aplicarán un proceso para presentar el HTML en un formato bajo pero que proporcione el mismo producto básico mínimo viable para cada sniffer o analizador. Por ejemplo, si recibe el fragmento , podría reemplazar palabras complicadas con un lenguaje simplificado. Por ejemplo, podría reemplazar cada instancia de automóvil, automóvil y automóvil con solo “automóvil”
- Nuevamente, en lugar de solo una cola, me imagino que los equilibradores de carga pueden establecer el orden en función de la importancia
- Luego tiene servidores muy grandes que despliega rápidamente detrás o muy por delante de la curva de la creciente cantidad de datos que planea indexar (nuevamente, modelando en Google). Estos solo procesan todas las páginas de clasificación inferior que no están marcadas como muy importantes. Por lo tanto, puede gestionar la frecuencia de contenido muy importante de forma muy aguda. Si su QDF, noticias, feed de Twitter: contenido de gran volumen representa el 10% de contnet y luego aumenta repentinamente, simplemente toma otro 5% de sus “servidores generalistas” y los enruta hasta que termine ese punto de aumento. Si el tiempo total para actualizar es en promedio 3 semanas y luego un día nota que la actualización más larga fue de 5 semanas, entonces solo necesita agregar un 20% de capacidad adicional en algún momento. No lo está agregando de inmediato porque sus servidores de indexación instantánea tienen escala automática
- La escala automática brinda elasticidad para superar las demandas, y es por eso que divide los componentes en procesos no asíncronos que no dependen de cada componente para terminar. Construye colas de trabajo basadas en el conjunto más pequeño de procedimientos que deben completarse en el mismo orden, la lista muy minimalista que puede.
- Otro ejemplo sería un sniffer de URL que también solicita una copia de la página. En primer lugar, tomará las URL y luego agregará las páginas KID a los registros de las URL a las que se vincula, según un estándar acordado por la industria como nofollow, que evitará que ese KID regrese como un enlace. El sniffer también mirará el texto de anclaje en ese enlace. Ya sea que esa página tenga o no ese texto, el sniffer lo registrará en un índice de relevancia. Un hilo o proceso separado consultará en base a un diccionario de sinónimos
- y luego ocurre la magia: un indexador listará las URL principales en todas las listas. Imagine una lista llamada “iphone” y en ella se encuentran todas las páginas del mundo con la palabra iphone, un recuento de la frecuencia con la que aparece, en qué países es relevante, en qué idioma es. basado en las señales que necesita su algoritmo, inmediatamente puntúa esa página
- La página también se agrega a otras señales sonoras / amenazantes similares
- Recuerde, en este punto, su copia de índice de la web es solo cientos de tablas de una sola palabra: automóvil, libro, iphone, bolígrafo, mouse, dell, servidor, kemp, carga, equilibrador
- Algunos índices abarcarán errores ortográficos y si aparece una consulta para el equilibrador, se ejecutará igual que el equilibrio o puede mantenerlos separados y puntuar las páginas más o menos según la versión de esa palabra que sea más o menos relevante. Me imagino que Google comenzó con esto y ahora tiene una versión híbrida donde algunos están colapsados (unidos) y otros están separados
La aplicación de resultados
Cada consulta procesada se asignará a un conjunto de resultados. la entrada en esto es la frase de consulta, el país y cualquier configuración de personalización que necesite saber. Los resultados del índice se vuelven a clasificar según corresponda.
Servidor de anuncios
Un servidor de anuncios enumerará los KID de cualquier anuncio y las palabras clave y negativos negativos. Cuando la consulta se pasa al servidor de resultados, el servidor de anuncios obtendrá una copia de esa solicitud y devolverá el HTML al servidor web de la aplicación de resultados, que devolverá una página HTML al usuario con los resultados orgánicos y pagos. Todo eso se hace en 0.0001 segundos o más rápido si es posible