GF(Go Frame) goframe.orgЭто модульная высокопроизводительная базовая среда разработки Go производственного уровня. Он достиг относительно полного построения инфраструктуры, включая часто используемые основные компоненты разработки, такие как: кеш, журнал, файл, время, очередь, массив, коллекция, строка, таймер, командная строка, блокировка файла, блокировка памяти, пул объектов, соединение объединение ресурсов, управление ресурсами, проверка данных, кодирование данных, мониторинг файлов, запланированные задачи, ORM базы данных, компоненты TCP/UDP, управление процессами/связь, параллельные контейнеры безопасности и т. д. И предоставляет ряд основных компонентов для разработки веб-сервисов, таких как: маршрутизатор, файлы cookie, сеанс, промежуточное ПО, регистрация службы, управление конфигурацией, механизм шаблонов и т. д., поддержка горячего перезапуска, горячего обновления, многодоменного имени, многопортового , мультисервисный, HTTPS, такие функции, как перезапись.
GFОн имеет множество базовых модулей, полную цепочку инструментов и подробную документацию по разработке. Открытый исходный код в течение почти двух лет,GFОн был подтвержден и поддержан все большим количеством мелких партнеров. Он широко используется в производственных проектах на уровне предприятия, таких как микросервисы, Интернет вещей, блокчейн, системы электронной коммерции и банковские системы. Он прошел миллионы испытаний. из 10 000 уровней и десятков миллионов проектов в 2019 году было облаком кодаgiteeОценивается какGVPСамый ценный проект с открытым исходным кодом.GFОн быстро растет и в настоящее время поддерживает правило выпуска итеративных версий в течение 1-2 месяцев, а сообщество активно.
Наконец, я желаю всем счастливого Нового 2020 года и процветания в Году Крысы!
новые возможности
- С Новым годом и новой погодой документы официального сайта сильно обновлены:goframe.org/index
-
GFОбновление цепочки инструментов:перейти на frame.org/tool chain/от…- новый
gf runГорячая компиляция и запуск команд; - новый
gf dockerКоманда компиляции образа Docker; - новый
gf gen modelМощная команда автоматической генерации модели; -
gf buildКоманда добавляет поддержку конфигурации файла конфигурации; - Множество улучшений инструмента командной строки;
- Добавлена функция автоматической настройки прокси;
- новый
- база данных
ORMНовые возможности:- Увеличивать
prefixПрефикс таблицы данных поддерживает:перейдите на frame.org/database/Guangdong… - новый
SchemaОбъекты базы данных и улучшенные функции переключения баз данных:перейдите на frame.org/database/Guangdong… - новый
WherePriметод, условный метод для автоматического определения первичного ключа:перейдите на frame.org/database/Guangdong… - Документы и примеры обновлены в большом количестве, охватывая более 95% функциональных возможностей;
- Увеличивать
Функциональные улучшения
container
-
garray- новый
New*ArrayRangeМетод инициализации массива, который создает указанный диапазон значений. - новый
Iterator*Метод обратного обхода элементов элемента массива. - Улучшить модульные тесты.
- новый
-
gvar- Улучшать
MapStrStr,MapStrStrDeepреализация метода.
- Улучшать
net
-
ghttp- Улучшить HTTP-клиент, увеличить автоматическую отправку параметров
Content-Typeидентификационная функция. -
Requestувеличение объектаParseметод, который используется для быстрой конвертации объектов, т.е. проверки параметров. -
Request.GetPost*все методы отмечены какdeprecated, Режим отправки унифицированных параметров клиентаQueryString,Form,Body. - Удалить
Responseразбор шаблонаGet/PostВстроенные переменные, новыеQuery,Form,RequestВстроенные переменные:зайдите на frame.org/net/http/day… - Улучшать
Response.WriteJson*иResponse.WriteXml*метод, увеличьтеstring,[]byteПоддержка параметра типа. -
ServerновыйGetRouterArrayспособ представления и доступа к прикладному уровнюServerСписок маршрутизации. -
ServerновыйUseметод, которыйBindMiddlewareDefaultПсевдоним, используемый для глобальной регистрации промежуточного программного обеспечения. -
ServerновыйRouteOverWriteЭлемент конфигурации для управления автоматическим переопределением при регистрации конфликта маршрутов. По умолчанию он отключен и запрашивается. -
ServerновыйGracefulЭлемент конфигурации, используемый для управления включением/отключением функции плавного перезапуска в сценарии с одной службой. Он включен по умолчанию. - Улучшить модульные тесты.
- Улучшить HTTP-клиент, увеличить автоматическую отправку параметров
-
gtcp- Улучшить функцию отправки и получения пакетов данных по простому протоколу.
- Установите время истечения срока действия кэша по умолчанию для пула соединений.
30Секунды изменены на10второй. - Улучшить модульные тесты.
database
-
gdb- новый
AsМетод псевдонима таблицы данных. - Улучшить автоматическую идентификацию безопасных символов в таблицах и полях данных.
- новый
DBМетод переключения объекта базы данных. - новый
TXМетоды поддержки транзакций связанных операций. - Улучшить модульные тесты.
- новый
os
-
gcfg- новый
GetMapStrStrметод.
- новый
-
gcmd- Добавлен парсинг параметров
strictСтрогие параметры, строгое разрешение по умолчанию, ошибка отчета возвращает, когда нет указанного имени параметра / опции.
- Добавлен парсинг параметров
-
genv- Улучшать
RemoveМетод поддерживает удаление нескольких переменных среды.
- Улучшать
-
gfile- Улучшать
TempDirМетод доступа к временному каталогу, в*nixПо умолчанию система/tmpсодержание. - новый
ReadLines,ReadByteLinesметод для чтения содержимого файла по обратному вызову строки. - новый
Copy*Метод копирования файлов/каталогов поддерживает рекурсию. - новый
Replace*Метод замены на содержимое файла в каталоге поддерживает рекурсию. - Улучшать
Scan*Метод для извлечения и возврата всех файлов/каталогов в указанном каталоге, поддержки спецификации режима файла и поддержки рекурсии. - Улучшить модульные тесты.
- Улучшать
-
gproc- Улучшить метод запуска командной строки.
- Улучшать
ShellЛогика получения командного файла. - Улучшить экспериментальный дизайн межпроцессного взаимодействия.
-
gtime- метод пакета, а также
Timeметод временной метки объектаSecond,Millisecond,Microsecond,NanosecondОтмечено как отмена, Добавить новоеTimestamp,TimestampMilli,TimestampMicro,TimestampNanoзаменять. - Следует отметить, что вышеуказанные модификации могут иметь проблемы совместимости со старыми версиями.
- метод пакета, а также
-
gview- Функция разбора, улучшения дизайна кеша.
- новый
encode,decodeФункции шаблона кодирования/декодирования HTML. - новый
concatФункция шаблона конкатенации строк. - новый
dumpШаблонная функция, которая работает какg.Dumpметод. - новый
AutoEncodeЭлемент конфигурации для автоматического вывода транскодированияHTMLсодержание, часто используемое для предотвращенияXSS, выключено по умолчанию. Обратите внимание, что эта функция не влияетincludeВстроенные функции:зайдите на frame.org/OS/view/hour… - Идеальное модульное тестирование.
crypto
-
gmd5- Увеличивать
MustEncrypt,MustEncryptBytes,MustEncryptString,MustEncryptFileметод.
- Увеличивать
-
gsha1- Увеличивать
MustEncryptFileметод
- Увеличивать
encoding
-
gbase64- новый
MustEncodeFile,MustEncodeFileToString,MustDecode,MustDecodeToStringметод.
- новый
-
gjson/gparser- новый
GetMapStrStrметод. - новый
Must*метод, который используется для генерации при сбое преобразования указанного формата данныхpanicошибка без возвратаerrorпараметр.
- новый
util
-
gconv- Улучшать
Convertметод увеличения[]int32,[]int64,[]uint,[]uint32,[]uint64,[]float32,[]float64Поддержка преобразования типов данных. - Улучшать
StringПоддержка метода преобразования строк для аргументов указателя. - Улучшать
Map*Структура кода и производительность метода преобразования карты. - новый
Floats,Float32s,Float64sправильно[]float32,[]float64Метод преобразования типов. - новый
Ints,Int32s,Int64sправильно[]int,[]int32,[]int64Метод преобразования типов. - новый
Uints,Uint32s,Uint64sправильно[]uint,[]uint32,[]uint64Метод преобразования типов. - Улучшить модульные тесты.
- Улучшать
frame
-
gins- Все одноэлементные объекты генерируются при сбое выборки
panicОшибка.
- Все одноэлементные объекты генерируются при сбое выборки
Bug Fix
- Добавлена поддержка распространенных неправильных форматов маршрутизации, таких как
/user//indexсовместимая поддержка. - ремонт
gtcp/gudpПроблема с единицей времени интервала при получении данных. - ремонт
gfile/gspath/gfsnotifyПакет строго не судит о существовании файла. - ремонт
gproc.Killметод вwindowsПроблема блокировки операций под системой. - ремонт
gstr.TrimLeftStr/gstr.TrimRightStrПроблема переполнения массива, когда длина заменяемой строки меньше длины заменяемой строки.