¿Puede un backend escrito en PHP con MySQL soportar una gran aplicación móvil con millones de usuarios?

Sí, puede, pero requiere una arquitectura decente y conocimientos de alojamiento para escalar, como el equilibrio de carga, la agrupación de MySQL, el almacenamiento en caché, etc.

PHP funciona muy rápido si usa el almacenamiento en caché de código de operación y el almacenamiento en caché de contenido estático.

El almacenamiento en caché de OpCode permite que el impacto frecuente de archivos PHP específicos resida en la memoria, por lo tanto, evita la E / S del disco y el análisis del código fuente, simplemente enfocándose en la ejecución del código.

El almacenamiento en caché de contenido estático produce archivos que no son dinámicos, lo que significa que estaría sirviendo a los navegadores una versión estática de su sitio y, cuando hay un cambio en el contenido, habría una reconstrucción de caché, que puede tener diferentes estrategias. Esto funciona muy bien para los blogs y sitios de WordPress con funciones de publicación de contenido.

Además, el almacenamiento en caché estático reduce la cantidad de conexiones abiertas en la base de datos MySQL, eliminando menos RAM.

También se requiere un conocimiento profundo de MySQL para el alojamiento, ya que puede requerir replicación maestro-maestro, replicación maestro-esclavo o réplicas de escritura / lectura, etc.

Para cosas que son adecuadas para el cómputo elástico, Gearman (gearman [Gearman Job Server]) puede ser un salvavidas, le permitiría crear estrategias de máquinas virtuales efímeras o contenedores efímeros para realizar cómputos a pedido.

El patrón de diseño Maestro-Trabajador (Patrón Maestro-Trabajador) puede ayudar a abordar el código en arquitecturas efímeras donde todos los servidores no tienen estado y la persistencia de datos se envía a los silos de datos donde el Maestro es responsable de escribirlo, y los trabajadores están realizando tareas de computación extensivas. Algunos servicios de procesamiento de video como Animoto (Make great videos. Easy.) Se benefician de algún tipo de arquitectura similar, y se han utilizado como un caso para AWS EC2 Elastic Compute Cloud (Amazon Web Services (AWS) – Cloud Computing Services).

El idioma no es una barrera, pero, cada vez más, el diseño y la estrategia de la arquitectura, y contratar a un ingeniero / arquitecto de software decente que lo sepa lo ayudará a encontrar la mejor estrategia para su producto, incluso si requiere que se ejecute Un lenguaje de script específico para el procesamiento del lado del servidor.

Hola,

Sí, es posible hacer una aplicación móvil con la ayuda de PHP. Se hace con la ayuda de Zend Studio. Una vez que instales este software de terceros, solo sigue estos sencillos pasos para dar a luz a tu aplicación móvil.

Paso 1: hacer un proyecto conectado a la nube

Abra un nuevo archivo en el proyecto móvil conectado a la nube. Ahora ingrese un nombre tanto en el móvil como en el lado del servidor. Vaya al menú desplegable del servidor PHP y haga clic en ‘Siguiente’. Ahora, en los pasos siguientes, puede configurar el asistente con varios códigos y un servidor REST.

Paso 2: Vista previa de la aplicación

El siguiente paso consiste en usar el simulador Cordova. Se puede obtener una vista previa junto con un código de muestra. En la plantilla, hay muchas formas de usar el emulador. Vaya al explorador PHP e implemente el archivo junto con el archivo del servidor.

Paso -3: Desarrollo de API de backend

Al llegar al lado del servidor, use Apigility para hacer API relajantes. Si la aplicación móvil que está utilizando se encuentra en el back-end de las aplicaciones, la nube que sirve los formularios de datos como marco. El editor Apigility te ayudará a concentrarte más.

Paso -4: desarrollo front-end

Una vez que haya terminado con el desarrollo del backend, es hora de enfocarse en el front-end. Hay que centrarse en la interfaz de usuario. Puede tomar la ayuda de fragmentos de código para darle la forma perfecta a su proyecto web.

Servicios de desarrollo de aplicaciones móviles | Contratar desarrolladores de aplicaciones

Sí, como Facebook lo hizo pero a un costo enorme.

¿Por qué? PHP tiene muchos inconvenientes cuando se trata de escalabilidad y alta disponibilidad, Facebook lo resolvió usando HHVM. Y hacer una herramienta como HHVM necesita mucha experiencia y dinero (para pagar a los desarrolladores). Pero HHVM no es la solución si está buscando soporte de extensiones (de terceros). Sí, PHP 7 es más rápido y mejor, pero en comparación con otros idiomas no es tan bueno. Si puede optimizar la carga, cualquier cosa puede funcionar bien. Puede fragmentar la base de datos. Utiliza un equilibrador de carga. Escribir micro servicios, donde cada punto final se ocupa de una sola tarea. Use colas para la memoria o procesos que requieren mucho tiempo, como enviar correos electrónicos o comprimir imágenes.

PHP no es malo, pero tampoco es genial, todo lo que puedo sugerir es optimizar tu aplicación tanto como sea posible, y debes ser bueno

PHP es utilizado por algunos de los sitios web más grandes y con mayor tráfico del mundo, incluidos:

  • Facebook.com
  • Baidu.com
  • Yahoo.com
  • Qq.com
  • WordPress.com
  • Tumblr.com

Y muchos otros por supuesto.

Puede tener éxito al crear un sitio web con millones de usuarios que usan cualquier idioma, y ​​también puede dejar de hacer un sitio web escalable usando cualquier idioma. La escalabilidad no se logra mediante la elección del idioma, se trata de la arquitectura de su software y servidores, y sus elecciones sobre cómo atender eficientemente las solicitudes web.

Pues claro que puede. Facebook funciona con él a pesar de que tienen su versión con algunas mejoras, pero ya estaban ejecutando millones de usuarios sin tener esa versión. Pero tenga cuidado de cómo estructura su base de datos.

Aquí hay una lista de compañías que usan PHP:

FACEBOOK

WIKIPEDIA

TUMBLR

CORREO DE CORREO

FLOJO

DIARIO

ETSY

Y la lista sigue y sigue … Todas las compañías mencionadas tienen millones de usuarios. Y tenga en cuenta que no puede escribir aplicaciones móviles con PHP, pero puede tener aplicaciones web que se ejecutan en navegadores móviles.

Algunas de las empresas que usan PHP.

No hay suficientes detalles para dar una respuesta. Supongo que sí, porque siempre puedes emplear múltiples servidores web para manejar la carga. Luego, fragmente la base de datos (sin tener idea de lo que se necesita DB, supongo que puede fragmentar) para dividir nuevamente la carga. Agregue algunas colas para administrar el flujo de trabajo y servidores adicionales para manejar diversas tareas (como la representación previa de conjuntos de datos o la puesta en cola de mensajes).

Entonces, tal vez definitivo. Si llega tan lejos con tantos usuarios, es probable que también tenga otros problemas de capacidad.

Sí, puede, pero necesita optimizar el código, usar diferentes tipos de cachés (caché de página, caché de recursos, caché de consultas mysql, memcached), usar CDN para activos. Si tiene grandes cantidades de datos, puede preferir postgresql en lugar de mysql.

Sí, pero su problema será obtener millones de usuarios, no encontrar maneras de lidiar con problemas de escala en el camino.

Si su código es optimizado y elástico, es posible. Necesita crear una arquitectura equilibrada de su backend.

More Interesting

¿Funcionará la idea de mezclar películas y la bolsa de valores para crear un juego móvil en India?

¿Qué tecnologías, idiomas y herramientas se utilizan para crear aplicaciones de chat como WhatsApp? ¿Requiere codificación en todos los idiomas nativos o hay alguna forma multiplataforma para hacerlo?

¿Cuál es la tecnología que debo usar para hacer una aplicación de chat en tiempo real en código nativo?

¿Cuáles son los pros y los contras de una aplicación web híbrida? ¿Por qué es la aplicación híbrida?

Cómo hacer una aplicación donde los usuarios ingresen información en el sitio web o la aplicación móvil, la información se envíe a un servidor para su cómputo, y la salida se muestra al usuario

¿Por qué no se recomienda Adobe Dreamweaver? ¿Puedes usar otra aplicación para hacer las cosas más fáciles que no traigan problemas?

Cómo comenzar como principiante en la aplicación web

Cómo especificar y simular el diseño de una versión móvil de un sitio web para un desarrollador

¿Necesitamos codificación del lado del servidor para la aplicación de mensajería si utilizamos Firebase?

¿Qué lenguaje de programación o pila de idiomas es el más adecuado para una aplicación interactiva de chat social que puede conectarse a redes externas?

Experiencia del cliente: ¿Qué tecnologías recientes han generado un alto nivel de entusiasmo?

¿Qué métodos están disponibles para anunciar mi nueva aplicación web y móvil?

¿Es una buena idea pasar del desarrollo web al desarrollo de aplicaciones?

Cómo asegurar una aplicación basada en el registro de un número de teléfono

¿Cómo crear un servicio de backend web para usar en mi aplicación móvil? No quiero pagar servicios como Parse. ¿Podría usar el framework Django?