Статьи

Платформы для создания сайтов: CMS, фреймворки и SaaS-решения

От выбора платформы для разработки зависит как сама по себе реализуемость необходимого функционала, так и возможности дальнейшего развития веб-проекта. Для создания сайта, как правило, выбирается одна из платформ: CMS, фреймворк или SaaS-решение.

SaaS-платформы еще часто называют «конструкторами сайтов». Основное преимущество этого варианта — весьма хороший уровень качества за очень небольшие деньги.

Система управления сайтом (Content Management System)  служит для разработки стандартных разновидностей сайтов. Много небольших и средних сайтов строится именно на CMS-платформах, так как это наиболее целесообразный с экономической точки зрения подход.

Фреймворк — это программный продукт, который также как и CMS служит основой для сайта, но фреймворк в отличие от CMS — это более низкоуровневое решение, обладающее большей гибкостью и производительностью. Этот вид платформ используют почти все крупные веб-проекты, а также подавляющее большинство веб-приложений и веб-сервисов.

Читать дальше →

SQL-инъекции — распространённый метод взлома веб-приложений и сайтов

SQL-инъекции — это один из  распространённых способов взлома сайтов и веб-приложений, работающих с реляционными базами данных. 

SQL-инъекции основаны на внедрении в выполняемый приложением запрос к базе данных произвольного SQL-кода, переданного злоумышленником. Последствиями SQL-инъекций может быть как кража, модификация или удаление данных, так и полный взлом атакуемой системы — получение привилегированного доступа, например.

Читать дальше →

Рекомендации по выбору CMS и фреймворков

При выборе конкретной платформы для разработки часто возникают сложности. Бывает непросто принять взвешенное решение, в этом случае будет полезен следующий алгоритм выбора.

  • При возможности найти готовые решения или продукты — используйте их. В большинстве случаев, оптимальная стратегия выбора: «чем проще — тем лучше».
  • Если у вас есть команда разработчиков, то прислушайтесь к их мнению. Важны как возможности самой платформы, так и наличие у команды опыта работы именно с этим технологическим стеком.
  • Заранее оцените «заточенность» выбранной платформы под ваши задачи. Не стоит на 100% доверять маркетинговым материалам вендора платформы.
Читать дальше →

Реляционные базы данных и NoSQL-хранилища

13.03.2019  |  Статьи  —  СУБД  /  хранение данных  /  SQL  /  NoSQL  /  серверное ПО

Базы данных служат для хранения и обработки данных. Бывают реляционные (SQL) и нереляционные (NoSQL) системы управления базами данных.

Реляционные системы управления базами данных (SQL) хранят данные в табличных структурах и чаще всего используются в качестве основного хранилища для веб-приложений. Они очень стабильны и их надёжность проверена временем. Нереляционные СУБД (NoSQL) заметно моложе реляционных баз данных, а также заметно от них отличаются по структуре хранения данных и работе с ними. Большинство нереляционных хранилищ превосходят классические SQL СУБД по скорости доступа или при работе со специфическими типами данных, но обычно эта скорость достигается за счёт снижения надёжности хранения. На практике NoSQL-решения обычно применяются не для хранения всех данных приложения, а для решения специфических задач — для кэширования, хранения логов, управления очередями, для распределённого хранения данных, ускорения поиска и фильтрации.

Читать дальше →

Поисковое продвижение сайта — цели, задачи и методы достижения результатов в SEO

Каждый коммерческий сайт должен выполнять вполне конкретные задачи: привлекать новых клиентов и способствовать росту продаж. На сегодняшний день основной источник новых клиентов из интернета — это поисковые системы. 

Большинство пользователей интернета начинают поиск информации об интересующих их товарах или услугах с поискового запроса в Яндексе или Google. Но получение посетителей из поисковых систем — задача непростая. Для того чтобы сайт отвечал требованиям поисковой системы, необходимо провести целый комплекс мероприятий по оптимизации внутренней структуры и содержания сайта, работать над usability, а также обеспечить высокую цитируемость ресурса внешними источниками.

Читать дальше →

DDoS — распределенные атаки типа «отказ в обслуживании»

DoS-атака — это атака типа «отказ в обслуживании» — Denial of Service. DDоS — это атака того же типа, но распределённая (distributed), то есть производящаяся с более чем одного атакующего компьютера.

Cуть этой разновидности атак состоит в том, чтобы «перегрузить» атакуемый сервер или «забить» каналы связи, что или ухудшает качество работы атакуемого приложения, или вызывает сбой и вообще прекращает его работу.

Читать дальше →

Вирусы на сайтах

Откуда берутся вирусы на сайтах? Как с ними бороться?

Три наиболее распространённые причины появления вирусов на сайтах — это кража паролей для доступа к файловой системе сервера, эксплуатация XSS-уязвимостей веб-сайтов, уязвимостей в серверном ПО (часто — в результате отсутствия своевременного обновления) и уязвимостей в используемых CMS (обычно тоже по причине отсутствия обновлений или из-за установки плагинов / расширений из недоверненных источников).

Читать дальше →

Фреймворк Ruby on Rails

​Rails — это прежде всего среда разработки, которая великолепно подходит для создания любого типа веб-приложений: систем для управления веб-сайтами и платформ для ведения электронной торговли, программ для организации совместной работы и для веб-сервисов для осуществления коммуникации, для учетных и ERP-систем, статистических и аналитических систем.

Читать дальше →

Быстродействие сайтов и веб-приложений

Под быстродействием веб-приложений понимается метрика, отражающая средний временной интервал от запроса пользователя до готовности страницы к взаимодействию в браузере. 

Быстродействие зависит от серверного оборудования и настройки серверного ПО, а также от качества реализации бэкенд- и фронтенд-частей сайта. Воспринимаемая пользователями скорость работы — это всегда сумма скоростей работы оборудования, бэкенда и фронтенда. В каждом из этих направлений есть набор хороших практик и оптимизаций, которые позволяют улучшить быстродействие.

Читать дальше →

Создание дизайна сайта или веб-приложения

Создание дизайна для сайта или веб-приложения — это самый субъективно оцениваемый этап разработки, часто вызывающий сложности как на этапе постановки задачи, так и на этапе сдачи-приёмки выполненных работ.

Задача этапа дизайна — разработка графических макетов интерфейса. К интерфейсу обычно выдвигаются вполне понятные технические требования — он должен быть понятен, удобен и позволять делать то, ради чего он создавался. В этой статье разберём основные подходы, позволяющие создать действительно качественный дизайн сайта.

Читать дальше →