Найдено результатов: 65

Заполнение DataSet или DataTable из результирующего набора запроса LINQ

Как можно представить запрос LINQ как веб-службу ASMX? Обычно с бизнес-уровня я могу вернуть типизированный DataSet или DataTable , который может быть сериализован для транспорта через ASMX.

Как я могу сделать то же самое для запроса LINQ? Есть ли способ заполнить типизированный DataSet или DataTable с помощью запроса LINQ?

public static MyDataTable CallMySproc()
{
    string conn = "...";

    MyDatabaseDataContext db = new MyDatabaseDataContext(conn);
    MyDataTable dt = new MyDataTable();

    // execute a sproc via LINQ
    var query = from dr
                in db.MySproc().AsEnumerable
                select dr;

    // copy LINQ query resultset into a DataTable -this does not work !    
    dt = query.CopyToDataTable();

    return dt;
}

Как я могу получить результирующий набор запроса LINQ в DataSet или DataTable ? Кроме того, можно ли сериализовать запрос LINQ, чтобы я мог представить его как веб-службу ASMX?

c#   linq   web-services   .net-3.5    

646   6   16:03, 1st July, 2020


Как распечатать документ HTML из веб-службы?

Я хочу распечатать HTML из веб-службы C#. Управление веб-браузером является избыточным и не работает хорошо в среде обслуживания, а также не работает хорошо в системе с очень жесткими ограничениями безопасности. Существует ли какая-либо бесплатная библиотека .NET , которая будет поддерживать печать базовой страницы HTML? Вот код, который у меня есть до сих пор, который не работает должным образом.

public void PrintThing(string document)
{
    if (Thread.CurrentThread.GetApartmentState() != ApartmentState.STA)
    {
        Thread thread =
            new Thread((ThreadStart) delegate { PrintDocument(document); });
        thread.SetApartmentState(ApartmentState.STA);
        thread.Start();
    }
    else
    {
        PrintDocument(document);
    }
}

protected void PrintDocument(string document)
{
    WebBrowser browser = new WebBrowser();
    browser.DocumentText = document;
    while (browser.ReadyState != WebBrowserReadyState.Complete)
    {
        Application.DoEvents();
    }
    browser.Print();
}

Это прекрасно работает при вызове из потоков типа UI,но ничего не происходит при вызове из потока типа службы. Изменение Print() на ShowPrintPreviewDialog() приводит к следующей ошибке скрипта IE:

Ошибка: dialogArguments.___IE_PrintType - это null или не объект.

URL: res://ieframe.dll/preview.dlg

И появится небольшое пустое диалоговое окно предварительного просмотра печати.

c#   html   web-services   printing    

525   6   16:03, 1st July, 2020


Доморощенное потребление веб-сервисов

Я написал несколько веб-сервисов для приложения .net , теперь я готов их использовать. Я видел множество примеров, когда существует доморощенный код для использования службы в отличие от использования автоматически созданных методов, которые Visual Studio создает при добавлении веб-ссылки.

Есть ли в этом какие-то преимущества?

.net   web-services    

399   1   16:03, 1st July, 2020


Как передать перечисленные значения в веб-службу

Моя дилемма заключается, в основном, в том, как разделить перечисление между двумя приложениями.

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

Тип документа (7 возможных типов документов: счет- фактура, договор и т.д.) передается в качестве параметра в метод UploadDocument веб-службы. Вопрос в том, каким должен быть тип (и возможные значения) этого параметра?

Поскольку вам нужно жестко закодировать эти значения в обоих приложениях, я думаю, что это O.K. чтобы использовать описательную строку (счет, контракт, WorkOrder , SignedWorkOrder).

Может быть, лучше создать перечисление DocumentTypes в первом приложении и воспроизвести его также во втором приложении, а затем передать соответствующее целочисленное значение веб-службе между ними?

web-services   application-integration    

441   8   16:03, 1st July, 2020


Как легко использовать веб-сервис из PHP

Существует ли какой-либо инструмент для PHP, который можно использовать для генерации кода для использования веб-службы на основе ее WSDL ? Что-то сравнимое с щелчком "Add Web Reference" в Visual Studio или плагином Eclipse, который делает то же самое для Java.

php   web-services   visual-studio   wsdl    

464   7   16:03, 1st July, 2020


Как можно динамически центрировать изображение в отчете служб MS Reporting Services?

Кроме того, в MS Reporting Services элемент image не позволяет центрировать само изображение, когда размеры неизвестны во время разработки. Другими словами, изображение (если оно меньше размеров, выделенных на поверхности конструктора) будет закреплено в верхнем левом углу, а не в центре.

Мой отчет будет знать URL изображения во время выполнения, и мне нужно иметь возможность центрировать это изображение, если оно меньше размеров, указанных в моем конструкторе.

reporting-services    

467   1   16:03, 1st July, 2020


Веб-службы на основе документов или RPC

Я нутром чувствую, что веб-сервисы на основе документов предпочтительнее на практике - это опыт других людей? Их легче поддерживать? (Я заметил, что SharePoint использует любой для "document type" в своем интерфейсе WSDL, я думаю, что это делает его документальным).

Кроме того-теперь люди предлагают услуги типа WSDL и Rest для одной и той же функциональности? WSDL популярен для генерации кода, но для таких интерфейсов, как PHP и Rails, они, похоже, предпочитают rest.

web-services   rest   wsdl    

483   3   16:03, 1st July, 2020


Вызов веб-REST услуги от классического ASP-страницы

Я хотел бы начать перемещать наши бизнес-слои приложений в коллекцию веб-сервисов REST. Однако большая часть нашей интрасети была построена с использованием классического ASP, и большинство разработчиков, где я работаю, продолжают программировать в классическом ASP. В идеале, чтобы они могли воспользоваться преимуществами уникального набора web APIs, его нужно было бы вызвать с классических страниц ASP.

Я не имею ни малейшего представления, как это сделать.

web-services   rest   asp-classic    

519   7   05:59, 8th August, 2020


В чем разница между конечной точкой, сервисом и портом при работе с веб-сервисами?

Я использовал Apache CXF, чтобы представить около десяти классов java в качестве веб-служб.

Я создал клиентов, используя CXF, Axis и .NET.

В Axis и CXF генерируется "Service" или "Locator". От этой услуги вы можете получить "Port". "Port" используется для выполнения отдельных вызовов методов, предоставляемых веб-службой.

В .NET "Service" непосредственно предоставляет вызовы веб-службе.

Может ли кто-нибудь объяснить разницу между портом, службой, локатором и конечной точкой, когда речь заходит о веб-службах?

Ось:

PatientServiceImplServiceLocator locator = 
    new PatientServiceImplServiceLocator();
PatientService service = locator.getPatientServiceImplPort();

CXF:

PatientServiceImplService locator = new PatientServiceImplService();
PatientService service = locator.getPatientServiceImplPort();

.чистый:

PatientServiceImplService service = new PatientServiceImplService();

java   .net   web-services   cxf   axis    

420   4   23:41, 4th August, 2020


лучший способ сохранения данных в веб-службе .NET

У меня есть веб-служба, которая запрашивает данные из этого файла json, но я не хочу, чтобы веб-служба каждый раз обращалась к этому файлу. Я думаю, что, возможно, я могу хранить данные где-то еще (возможно, в памяти), чтобы веб-служба могла просто получить данные оттуда в следующий раз, когда она попытается запросить те же самые данные. Я вроде бы понимаю, что нужно сделать, но я просто не знаю, как это сделать на самом деле. Как мы сохраняем данные в веб-сервисе?

Обновление: оба предложения, кэширование и использование статических переменных, выглядят хорошо. Может быть, мне стоит использовать оба варианта, чтобы сначала посмотреть на один, а если его там нет, то использовать второй, если его там тоже нет, тогда я посмотрю на файл json.

.net   web-services   json   memory   persistence    

408   4   11:53, 19th August, 2020


Загрузка файлов через веб-службы

Можно ли загрузить файл с компьютера клиента на сервер через веб-службу? Клиент может запускать все, что угодно, от собственного настольного приложения до тонкого клиента ajax.

.net   web-services   file-upload   upload    

522   2   08:11, 28th August, 2020


Возврат больших результатов через веб-сервис

В данный момент я работаю над веб-сервисом, и есть вероятность, что возвращаемые результаты могут быть довольно большими ( > 5 Мб).

Вполне допустимо, чтобы этот набор данных был таким большим, и веб-сервис можно назвать либо синхронизацией, либо асинхронностью, но мне интересно, что думают люди о следующем:

  1. Если соединение потеряно, то весь результирующий набор должен быть регенерировали и отправляли снова. Есть любым способом я могу сделать все что угодно "resume" если соединение потеряно или сбросить?

  2. Является ли отправка результирующего набора такого большого размера вообще уместной? Может быть, лучше реализовать какой-то "paging", где результирующий набор генерируется и хранится на сервере, а клиент может затем загружать куски результирующего набора в меньших количествах и повторно собирать набор в их конце?

c#   .net   web-services    

485   4   16:59, 1st August, 2020


Сколько дополнительных накладных расходов генерируется при отправке файла через веб-службу в виде массива байтов?

Этот вопрос и ответ показывают, как отправить файл в виде массива байтов через веб-службу XML. Сколько накладных расходов генерируется при использовании этого метода для передачи файлов? Я предполагаю, что данные выглядят примерно так:

<?xml version="1.0" encoding="UTF-8" ?>
<bytes>
    <byte>16</byte>
    <byte>28</byte>
    <byte>127</byte>
    ...
</bytes>

Если этот формат правильный, то байты сначала должны быть преобразованы в UTF-8 символов. Каждый из этих символов выделяет 8 байт. Несколько байтов, хранящихся в базе 10, hex, или двоичных символов? Насколько больше выглядит файл, когда он отправляется из-за данных XML и кодировки символов? Встроено ли сжатие в веб-службы?

xml   web-services    

506   5   23:21, 24th August, 2020


Можно ли вернуть объекты из WebService?

Вместо того чтобы возвращать обычную строку, есть ли способ вернуть классические объекты? Если нет, то каковы наилучшие практики? Вы переносите свой объект в xml и перестраиваете объект с другой стороны? Каковы другие возможности?

web-services    

472   11   15:21, 17th August, 2020


Возвращение DataTables в WCF/.NET

У меня есть сервис WCF, из которого я хочу вернуть DataTable. Я знаю, что это часто очень обсуждаемая тема, насколько возвращение DataTables является хорошей практикой. Давайте на минуту отложим это в сторону.

Когда я создаю DataTable с нуля, как показано ниже, нет никаких проблем вообще. Таблица создается, заполняется и возвращается клиенту, и все хорошо:

[DataContract]
public DataTable GetTbl()
{
    DataTable tbl = new DataTable("testTbl");
    for(int i=0;i<100;i++)
    {
        tbl.Columns.Add(i);
        tbl.Rows.Add(new string[]{"testValue"});
    }
    return tbl;
}

Однако, как только я выхожу и нажимаю на базу данных для создания таблицы, как показано ниже, я получаю CommunicationException "The underlying connection was closed: The connection was closed unexpectedly."

[DataContract]
public DataTable GetTbl()
{
    DataTable tbl = new DataTable("testTbl");
    //Populate table with SQL query

    return tbl;
}

Таблица заполняется правильно на стороне сервера. Он значительно меньше, чем тестовая таблица, которую я прокрутил и вернул, а запрос маленький и быстрый - здесь нет проблем с таймаутами или большой передачей данных. Используются те же самые точные функции и DataContracts/ServiceContracts/BehaviorContracts.

Почему способ заполнения таблицы имеет какое-либо отношение к успешному возвращению таблицы?

c#   .net   wcf   web-services   datatable    

544   8   13:59, 13th August, 2020


Каков ваш предпочтительный метод отправки сложных данных через веб-сервис?

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

  1. Передача и возврат реальных бизнес-объектов с данными и поведением. Когда wsdl.exe запускается, он автоматически создает прокси-классы, которые содержат только часть данных, и они будут автоматически преобразованы в мои реальные бизнес-объекты и из них на стороне сервера. На стороне клиента они будут использовать только тупой тип прокси, и им придется сопоставлять их с некоторыми реальными бизнес-объектами, как они считают нужным. Большой недостаток здесь заключается в том, что если я "own" как серверная, так и клиентская сторона, и я хочу использовать один и тот же набор реальных бизнес-объектов, я могу столкнуться с определенными головными болями с конфликтами имен и т. д. (Поскольку реальные объекты и прокси называются одинаково.)

  2. Забудьте о попытке передать "real" бизнес-объектов. Вместо этого просто создайте простые объекты DataTransfer, которые я буду сопоставлять с моими реальными бизнес-объектами вручную. Они все равно копируются в новые прокси-объекты wsdl.exe, но по крайней мере я не обманываю себя, думая, что веб-сервисы могут изначально обрабатывать объекты с бизнес-логикой в них.

Кстати-кто-нибудь знает, как сказать wsdl.exe, чтобы не делать копию объекта? Разве мы не должны просто сказать ему: "Эй, используй этот существующий тип прямо здесь. Не копируйте его!"

Во всяком случае, пока я вроде как остановился на #2, но мне любопытно, что вы все думаете. У меня есть чувство, что есть гораздо лучшие способы сделать это в целом, и я даже не могу быть полностью точным по всем пунктам, поэтому, пожалуйста, дайте мне знать, что вы испытали.

Update: я только что узнал, что VS 2008 имеет возможность повторно использовать существующие типы при добавлении "ссылки на службу", а не создавать совершенно новый идентичный тип в файле прокси. Сладкий.

.net   web-services   soap   wsdl    

431   4   08:42, 18th August, 2020


Лучшая практика для веб-сервисов

Я создал веб-сервис, и когда я хочу использовать его методы, я создаю его экземпляр в процедуре a, вызываю метод, и я, наконец, избавляюсь от него, однако я думаю, что также можно было бы создать экземпляр веб-сервиса в событии "private void Main_Load(object sender, EventArgs e)".

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

Я хотел бы знать, какие из этих методов лучше, или если есть гораздо лучший способ сделать это

Стратегия 1

private void btnRead_Click(object sender, EventArgs e)
{
    try
    {
        //Show clock
        this.picResult.Image = new Bitmap(pathWait);

        Application.DoEvents();

        //Connect to webservice
        svc = new ForPocketPC.ServiceForPocketPC();
        svc.Credentials = new System.Net.NetworkCredential(Settings.UserName, Settings.Password);
        svc.AllowAutoRedirect = false;
        svc.UserAgent = Settings.UserAgent;
        svc.PreAuthenticate = true;
        svc.Url = Settings.Url;
        svc.Timeout = System.Threading.Timeout.Infinite;

        svc.CallMethod();
         ...
    }
    catch (Exception ex)
    {
        ShowError(ex);
    }
    finally
    {
        if (svc != null)
            svc.Dispose();
    }
}

Стратегия 2

private myWebservice svc;

private void Main_Load(object sender, EventArgs e)
{
    //Connect to webservice
    svc = new ForPocketPC.ServiceForPocketPC();
    svc.Credentials = new System.Net.NetworkCredential(Settings.UserName, Settings.Password);
    svc.AllowAutoRedirect = false;
    svc.UserAgent = Settings.UserAgent;
    svc.PreAuthenticate = true;
    svc.Url = Settings.Url;
    svc.Timeout = System.Threading.Timeout.Infinite;
}

private void btnRead_Click(object sender, EventArgs e)
{
    try
    {
        //Show clock
        this.picResult.Image = new Bitmap(pathWait);

        Application.DoEvents();
        svc.CallMethod();
         ...
    }
    catch (Exception ex)
    {
        ShowError(ex);
    }
}

private void Main_Closing(object sender, CancelEventArgs e)
{
    svc.Dispose();
}

web-services    

415   2   19:47, 4th August, 2020


Лучшая практика для веб-сервисов

Я создал веб-сервис, и когда я хочу использовать его методы, я создаю его экземпляр в процедуре a, вызываю метод, и я, наконец, избавляюсь от него, однако я думаю, что также можно было бы создать экземпляр веб-сервиса в событии "private void Main_Load(object sender, EventArgs e)".

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

Я хотел бы знать, какие из этих методов лучше, или если есть гораздо лучший способ сделать это

Стратегия 1

private void btnRead_Click(object sender, EventArgs e)
{
    try
    {
        //Show clock
        this.picResult.Image = new Bitmap(pathWait);

        Application.DoEvents();

        //Connect to webservice
        svc = new ForPocketPC.ServiceForPocketPC();
        svc.Credentials = new System.Net.NetworkCredential(Settings.UserName, Settings.Password);
        svc.AllowAutoRedirect = false;
        svc.UserAgent = Settings.UserAgent;
        svc.PreAuthenticate = true;
        svc.Url = Settings.Url;
        svc.Timeout = System.Threading.Timeout.Infinite;

        svc.CallMethod();
         ...
    }
    catch (Exception ex)
    {
        ShowError(ex);
    }
    finally
    {
        if (svc != null)
            svc.Dispose();
    }
}

Стратегия 2

private myWebservice svc;

private void Main_Load(object sender, EventArgs e)
{
    //Connect to webservice
    svc = new ForPocketPC.ServiceForPocketPC();
    svc.Credentials = new System.Net.NetworkCredential(Settings.UserName, Settings.Password);
    svc.AllowAutoRedirect = false;
    svc.UserAgent = Settings.UserAgent;
    svc.PreAuthenticate = true;
    svc.Url = Settings.Url;
    svc.Timeout = System.Threading.Timeout.Infinite;
}

private void btnRead_Click(object sender, EventArgs e)
{
    try
    {
        //Show clock
        this.picResult.Image = new Bitmap(pathWait);

        Application.DoEvents();
        svc.CallMethod();
         ...
    }
    catch (Exception ex)
    {
        ShowError(ex);
    }
}

private void Main_Closing(object sender, CancelEventArgs e)
{
    svc.Dispose();
}

web-services    

447   2   21:06, 1st October, 2020


Исключение soapexception: отсутствует корневой элемент возникает, когда веб-служба .NET называется от Flex

У меня есть веб-приложение .net, которое имеет приложение Flex, встроенное в страницу. Это приложение flex вызывает веб-сервис .net. Я могу trace процесс выполнения через отладчик и все выглядит отлично, пока я не получу ответ:




soap:ReceiverSystem.Web.Services.Protocols.SoapException: Server was unable to process request

. ---> System.Xml.XmlException: Root element is missing.

   at System.Xml.XmlTextReaderImpl.Throw(Exception e)

   at System.Xml.XmlTextReaderImpl.ThrowWithoutLineInfo(String res)

   at System.Xml.XmlTextReaderImpl.ParseDocumentContent()

   at System.Xml.XmlTextReaderImpl.Read()

   at System.Xml.XmlTextReader.Read()

   at System.Web.Services.Protocols.SoapServerProtocol.SoapEnvelopeReader.Read()

   at System.Xml.XmlReader.MoveToContent()

   at System.Web.Services.Protocols.SoapServerProtocol.SoapEnvelopeReader.MoveToContent()

   at System.Web.Services.Protocols.SoapServerProtocolHelper.GetRequestElement()

   at System.Web.Services.Protocols.Soap12ServerProtocolHelper.RouteRequest()

   at System.Web.Services.Protocols.SoapServerProtocol.RouteRequest(SoapServerMessage message)

   at System.Web.Services.Protocols.SoapServerProtocol.Initialize()

   at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest

 request, HttpResponse response, Boolean& abortProcessing)

   --- End of inner exception stack trace ---

Вызов от flex выглядит хорошо, выполнение через веб-сервис хорошо, но это ответ, который я захватываю через wireshark, что здесь происходит?

Я попробовал несколько веб-методов, от "Hello World" до параматизированного methods...all возвращения с тем же ответом...

Я подумал, что это может иметь какое-то отношение к кодированию с помощью "---&gt",, но я не уверен, как управлять тем, что .net выводит в качестве ответа.

flex   web-services   soap    

730   3   21:47, 10th August, 2020


Запланированные отчеты службы SSRS не работают

Мои запланированные отчеты на сервере SQL не будут выполняться. Я проверил журналы и нашел работу, которая была неудачной. Сообщение об ошибке в журнале было:

"Выполнить как вход" не удалось для запрошенного входа " NT AUTHORITY\NETWORK SERVICE'. Шаг не удался.

Я использую аутентификацию SQL для отчета, поэтому не должно быть проблем с разрешениями на данные. Запланированные отчеты на сервере выполняться не будут.

sql-server   reporting-services   ssrs-2008    

461   5   04:11, 18th August, 2020


.NET 3.5 Service Pack 1 вызывает 404 страницы в ASP.NET веб-приложении

У меня есть проблема с IIS 6.0 прекращением работы для приложения ASP.NET после установки пакета обновления 1 для .NET 3.5 .

У меня есть 2 идентичных виртуальных выделенных сервера. Установка SP1 на Первом не оказала никакого негативного влияния. Установка его на втором вызвала ASP.NET страницы, чтобы начать возвращать 404 страницы не найдено.

Статические страницы .html работают нормально на обоих серверах.

Кто-нибудь еще испытывал это?

iis   .net-3.5   servicepacks    

393   6   10:25, 4th August, 2020


Оптимизация экспорта PDF огромных отчетов в Sql Reporting Services 2005

Во-первых, я понимаю, что это ужасная идея-запускать очень большие / длинные отчеты. Я знаю, что у Microsoft есть эмпирическое правило, гласящее, что отчет SSRS не должен занимать более 30 секунд для выполнения. Однако иногда гигантские отчеты являются предпочтительным злом из-за внешних сил, таких как соблюдение государственных законов.

На моем рабочем месте у нас есть приложение asp.net (2.0), которое мы перенесли из Crystal Reports в SSRS. Из-за большой базы пользователей и сложных требований к отчетности UI у нас есть набор экранов, который принимает введенные пользователем параметры и создает графики для запуска в течение ночи. Поскольку приложение поддерживает несколько платформ отчетов, мы не используем средства планирования / моментального снимка SSRS. Все отчеты в системе генерируются запланированным консольным приложением, которое принимает введенные пользователем параметры и генерирует отчеты с соответствующими решениями для создания отчетов, с помощью которых они были созданы. В случае с отчетами SSRS консольное приложение создает отчеты SSRS и экспортирует их как PDFs через веб-службу SSRS API.

До сих пор с SSRS было гораздо проще иметь дело, чем с Crystal, за исключением определенного отчета на 25 000 страниц, который мы недавно преобразовали из crystal reports в SSRS. Сервер SSRS - это 64-битный сервер 2003 года с 32 гигабайтами ram под управлением SSRS 2005. Все наши небольшие отчеты работают фантастически, но у нас есть проблемы с нашими большими отчетами, такими как этот. К сожалению, мы не можем сгенерировать вышеупомянутый отчет через веб-сервис API. Следующая ошибка возникает примерно через 30-35 минуты после generation/export:

Сообщение об исключении: базовое соединение было закрыто: произошла непредвиденная ошибка при получении.

Вызов веб-службы-это то, что, я уверен, вы все уже видели раньше:

data = rs.Render(this.ReportPath, this.ExportFormat, null, deviceInfo,
   selectedParameters, null, null, out encoding, out mimeType, out usedParameters, 
   out warnings, out streamIds);

Странно то, что этот отчет будет run/render/export, если отчет запускается непосредственно на сервере отчетов с помощью диспетчера отчетов. Процесс, который создает данные для отчета, выполняется в течение примерно 5 минут. Отчет отображается в собственном формате SSRS в браузере / средстве просмотра примерно через 12 минут. Экспорт в pdf через браузер / средство просмотра в диспетчере отчетов занимает дополнительно 55 минут. Это работает надежно, и он производит колоссальный 1.03gb pdf.

Вот некоторые из наиболее очевидных вещей, которые я пытался сделать, чтобы отчет работал через веб-службу API:

  • установите HttpRuntime ExecutionTimeout значение до 3 часов на отчет сервер
  • отключен http сохранить активность на сервере отчетов
  • увеличено время ожидания скрипта на сервере отчетов
  • установите для отчета значение никогда не терять время ожидания на сервере
  • установите тайм-аут отчета на несколько часов при вызове клиента

Из тех настроек, которые я пробовал, мне довольно удобно говорить, что любые проблемы с таймаутом были устранены.

Основываясь на моем исследовании сообщения об ошибке, я считаю, что веб-служба API не отправляет фрагментированные ответы по умолчанию. Это означает, что он пытается отправить все 1.3gb по проводу в одном ответе. В какой-то момент IIS бросает полотенце. К сожалению, API абстрагирует конфигурацию веб-службы, поэтому я не могу найти способ включить блокировку ответов.

  1. Кто-нибудь знает, как уменьшить/оптимизировать фазу экспорта PDF и / или размер PDF без снижения общего количества страниц?
  2. Есть ли способ включить блокировку ответа для SSRS?
  3. Есть ли у кого-нибудь еще какие-то другие теории относительно того, почему это работает на сервере, но не через API?

EDIT: прочитав сообщение kcrumley, я начал смотреть на средний размер страницы, принимая размер файла / количество страниц. Интересно, что на небольших отчетах математика работает так, что каждая страница составляет примерно 5K. интересно, что когда отчет становится больше, это "average" увеличивается. Отчет на 8000 страниц, например, усредняется по 40K/page. очень странно. Я также добавлю, что количество записей на странице устанавливается за исключением последней страницы в каждой группе, поэтому это не тот случай, когда некоторые страницы имеют больше записей, чем другие.

sql-server   reporting-services    

627   3   08:40, 10th August, 2020


SSRS-удаление пробной версии VS Business Intelligence

Я хочу знать, как полностью удалить MSSQL 2005 .

Я уже некоторое время использую пробную версию SQL Server Reporting Services. Моя компания, наконец, купила программное обеспечение у онлайн-дистрибьютора, и для поддержки Oracle нам нужно было обновить до MSSQL 2005 SP2. Во всяком случае, версия программного обеспечения "full" не будет установлена, поскольку она уже была установлена (похоже, установщик не распознает, что была установлена пробная версия). Поэтому я попытался удалить MSSQL 2005, и все, что связано (включая visual studio), я не могу его переустановить. Ошибка-это неопределенное сообщение об ошибке, и когда я нажимаю ссылку, чтобы получить дополнительную информацию, обычная ошибка "no information about this error was found".

Установка Microsoft SQL Server 2005

Произошел неожиданный сбой во время мастер установки. Вы можете просмотреть журналы установки и / или нажмите кнопку справка кнопка для получения дополнительной информации.

Для получения справки нажмите кнопку: http://go.microsoft.com/fwlink?LinkID=20476&ProdName=Microsoft+SQL+Server&ProdVer=9.00.1399.06&EvtSrc=setup.rll&EvtID=50000&EvtType=packageengine%5cinstallpackageaction.cpp%40InstallToolsAction.11%40sqls%3a%3aInstallPackageAction%3a%3aperform%400x643

BUTTONS:

OK

sql-server   visual-studio   reporting-services    

473   2   14:36, 21st August, 2020


SSRS-процесс умирает/переходит в спящий режим после неиспользования

Еще один вопрос SSRS здесь:
У нас есть разработка, QA, Prod-резервное копирование и производственный набор серверов SSRS.
На наше производство и прод-резервное копирование, SSRS переходит в спящий режим если не используется в течение определенного периода времени.

Это не происходит на нашем сервере разработки или QA.
В корпоративной среде, в которой мы находимся, у нас нет физического (или даже удаленного входа) доступа к этим машинам, и нам приходится работать с командой удаленных администраторов для настройки нашего приложения SSRS.

Мы попросили, чтобы они исправили, если это возможно, эту проблему. До сих пор они не смогли определить проблему, и я хотел бы знать, знает ли кто-нибудь из моих коллег ответ на этот вопрос. Спасибо.

sql-server   reporting-services   ssrs-2008    

501   3   13:02, 7th August, 2020


Простой способ преобразования Crystal Reports в MS SQL Server Reporting Services

Есть ли способ легко конвертировать отчеты Crystal Reports в формат Reporting Services RDL? У нас есть довольно много отчетов, которые скоро будут нуждаться в преобразовании.

Я знаю о ручном процессе (который в основном восстанавливает все ваши отчеты с нуля в SSRS), но мои поиски указали на несколько возможностей с автоматическим преобразованием "acceleration" с несколькими консалтинговыми фирмами. (Как описано далее .... - ссылка сломана).

Есть ли у кого-нибудь из вас какой-либо действительный опыт или рекомендации по этому конкретному вопросу? Есть ли вокруг какие-то инструменты, о которых я не знаю?

sql-server   reporting-services   crystal-reports   migration    

632   9   11:34, 11th August, 2020


Интернационализация в SSRS

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

Другими словами, можно ли делать ресурсы в отчете SSRS , или я застрял с сохранением всего этого текста в базе данных и запросом на него?

reporting-services   internationalization    

486   1   18:48, 6th August, 2020


Решения Для Корпоративной Отчетности

Какие варианты существуют в отрасли для корпоративной отчетности? В настоящее время я использую SSRS 2005, и знаю, что есть еще одна версия, выходящая с новым выпуском MSSQL.

Но, похоже,что это также может быть хорошим временем, чтобы исследовать рынок, чтобы увидеть, что еще там есть.

С чем вы столкнулись? Нравится ли вам это/не нравится? Почему?

Спасибо.

sql   reporting-services   reporting    

499   14   06:55, 11th August, 2020


Большие, сложные объекты как результат работы веб-службы

Еще раз здравствуйте, дамы и господа!

OK, вслед за моим другим вопросом о результатах веб-службы ASP.NET, Прокси-классах и преобразовании типов . Я пришел к той части своего проекта, где мне нужно надеть свою мыслительную шапочку.

В принципе, у нас есть большой, сложный пользовательский объект, который должен быть возвращен из веб-службы и использован в клиентском приложении.

Теперь, основываясь на предыдущем обсуждении, мы знаем, что это будет затем принимать форму прокси-класса(классов) в качестве возвращаемого типа. Чтобы преодолеть это, нам нужно в основном скопировать свойства от одного к другому.

В данном случае, это то, что я бы очень, очень, очень хотел! хотелось бы избежать!

Так что, это заставило меня задуматься, как еще мы могли бы это сделать?

Мои текущие мысли заключаются в том, чтобы включить объект для полной сериализации в XML, а затем вернуть XML в виде строки из веб-службы. Затем мы десериализации на клиенте. Это будет означать изрядную часть украшения атрибутов, но, по крайней мере, код на обеих конечных точках будет легким, а именно, просто используя сериализатор .NET XML.

Что вы думаете по этому поводу?

c#   asp.net   xml   web-services   serialization    

467   4   10:42, 1st August, 2020


Я хотел бы получить несколько советов по отладке исключений веб-службы WCF

Я создал службу WCF, и когда я просматриваю конечную точку, я получаю следующую ошибку:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Body>
    <s:Fault>
      <faultcode 
            xmlns:a="http://schemas.microsoft.com/ws/2005/05/addressing/none">
            a:ActionNotSupported
      </faultcode> 
      <faultstring xml:lang="en-GB">
            The message with Action '' cannot be processed at the receiver,
            due to a ContractFilter mismatch at the EndpointDispatcher. 
            This may be because of either a contract mismatch (mismatched
            Actions between sender and receiver) or a binding/security
            mismatch between the sender and the receiver. Check that sender
            and receiver have the same contract and the same binding
            (including security requirements, e.g. Message, Transport, None).
      </faultstring> 
    </s:Fault>
  </s:Body>
</s:Envelope>

Я исправил проблему, но не получил удовольствия от опыта! Есть ли у кого-нибудь советы или инструменты для отладки подобных проблем?

.net   wcf   web-services    

526   1   16:13, 25th August, 2020


Я могу поделиться данными SQL сервера Reporting Services SOURCE... а как насчет набора данных?

Я разрабатываю решение служб Reporting Services для веб-сайта DOD. Часто я буду иметь отчет и хочу иметь в качестве параметра службу (в дополнение к другим аналогичным мирским, но повторяющимся параметрам, таким как финансовый год, дата вступления данных в силу и т. д.). В основном все, что я видел в SSRS 2005, говорит, что это невозможно сделать... но я лично отказываюсь верить, что MS было бы так stupid/naive/short-sited, чтобы оставить что-то вроде обмена наборами данных из отчетности полностью.

Есть ли неуклюжий (или не очень неуклюжий способ) для совместного использования наборов данных и по-прежнему держать Сервер отчетов счастливым? Будет ли SSRS2008 делать это?

EDIT:

Наверное, я сформулировал это нечетко. У меня есть стопка отчетов. Поскольку я нахожусь в среде DoD, один общий параметр для этих отчетов-Служба (Армия, Флот и т. д. для тех, кто не US пользователей). Поскольку "Business rules" не позволяет мне использовать хранимые процедуры; есть ли способ сделать 1 набор данных и связать его с различными отчетами? Будет ли отчетность 2008 поддерживать что-то подобное? Мне надоело перепечатывать один и тот же запрос в куче отчетов.

reporting-services    

473   2   22:40, 26th August, 2020


Шифрование в веб-сервисах C#

Я ищу простой способ зашифровать мое сообщение soap в моем веб-сервисе C#.

Я искал WSE 3.0 , но, похоже, Microsoft отказалась от его поддержки, и поэтому его не так просто использовать.
Похоже, что WCF мог бы быть вариантом, но я предпочитаю не обновляться с .NET 2.0 .

Какой-нибудь простой и понятный метод шифрования?

c#   web-services   security   encryption    

430   6   23:04, 25th August, 2020


Веб-сервис жив навсегда

Я часто использую веб-сервис таким образом

public void CallWebservice()

{

  mywebservice web = new mywebservice();

  web.call();

}

но иногда я делаю это

private mywebservice web;

public Constructor()
{

  web = new mywebservice();

}

public void CallWebservice()
{

  web.call();

}

Второй подход мне очень нравится, но иногда он тайм-аут, и мне пришлось снова запустить приложение, первый, я думаю, что он приносит накладные расходы, и это не очень эффективно, на самом деле, иногда первый вызов возвращает WebException - ConnectFailure (я не знаю, почему).

Я нашел статью (проблемы веб-сервиса (свет в конце туннеля?)) что превышает время ожидания превращения свойства KeepAlive в false в переопределенной функции GetWebRequest, вот код:

Protected Overrides Function GetWebRequest(ByVal uri As System.Uri) As System.Net.WebRequest

  Dim webRequest As Net.HttpWebRequest = CType(MyBase.GetWebRequest(uri), Net.HttpWebRequest)

  webRequest.KeepAlive = False

  Return webRequest

End Function

Вопрос в том, можно ли продлить навсегда время ожидания веб-сервиса и, наконец, как вы реализуете свои веб-сервисы для решения этой проблемы?

web-services    

419   1   10:52, 3rd August, 2020


Вызов веб-службы ASP.NET из ASP с помощью SOAPClient

У меня есть веб-сервис ASP.NET с такими функциями, как:

[WebService(Namespace = "http://internalservice.net/messageprocessing")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
public class ProvisioningService : WebService
{
    [WebMethod]
    public XmlDocument ProcessMessage(XmlDocument message)
    {
        // ... do stuff
    }
}

Я вызываю веб-службу из ASP, используя что-то вроде:

provWSDL = "http://servername:12011/MessageProcessor.asmx?wsdl"
Set service = CreateObject("MSSOAP.SoapClient30")
service.ClientProperty("ServerHTTPRequest") = True
Call service.MSSoapInit(provWSDL)

xmlMessage = "<request><task>....various xml</task></request>"
result = service.ProcessMessage(xmlMessage)

Проблема, с которой я сталкиваюсь, заключается в том, что когда XML достигает метода ProcessMessage, веб-служба plumbing попутно добавила пространство имен по умолчанию. т. е. если я установлю точку останова внутри ProcessMessage (сообщение XmlDocument), я увижу:

<request xmlns="http://internalservice.net/messageprocessing">
  <task>....various xml</task> 
</request>

Когда я захватываю пакеты по проводу, я вижу, что XML, отправленный инструментарием SOAP, немного отличается от того, что отправлено клиентом .NET WS. Набор инструментов SOAP отправляет:

<SOAP-ENV:Envelope 
    xmlns:SOAPSDK1="http://www.w3.org/2001/XMLSchema" 
    xmlns:SOAPSDK2="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/" 
    xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Body>
        <ProcessMessage xmlns="http://internalservice.net/messageprocessing">
            <message xmlns:SOAPSDK4="http://internalservice.net/messageprocessing">
                <request>
                    <task>...stuff to do</task>
                </request>
            </message>
        </ProcessMessage>
    </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Если клиент отправляет .NET:

<soap:Envelope 
    xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap:Body>
        <ProcessMessage xmlns="http://internalservice.net/messageprocessing">
            <message>
                <request xmlns="">
                    <task>...stuff to do</task>
                </request>
            </message>
        </ProcessMessage>
    </soap:Body>
</soap:Envelope>

Прошло так много времени с тех пор, как я использовал инструментарий ASP/SOAP для вызова веб-сервисов .NET, что я не могу вспомнить все умные tricks/SOAP-fu, которые я использовал, чтобы обойти подобные вещи.

Есть какие-нибудь идеи? Одним из решений является создание вызываемого COM .NET прокси, который принимает XML как строковый парам и вызывает WS от моего имени, но это дополнительный уровень сложности/работы, которую я надеялся не делать.

.net   asp.net   web-services   soap   asp-classic    

529   3   06:36, 7th August, 2020


Пользовательский шрифт в службах отчетов SQL Server 2005

У меня возникли проблемы с моими отчетами SQL Reporting Services. Я использую пользовательский шрифт для заголовков отчетов, и при развертывании на сервере он не отображается правильно, когда я печатаю или экспортирую в PDF/TIFF., я установил шрифт на сервере. Есть ли что-то еще, что мне нужно сделать, чтобы использовать пользовательские шрифты?

При просмотре шрифта в браузере он выглядит корректно-так как на всех клиентских компьютерах установлен шрифт...


Спасибо Райан, твой пост в FAQ решил проблему. Установка шрифтов на сервере устраняет проблему печати, а также проблемы с диаграммами (которые также отображаются на сервере). Как вы уже отмечали (а также упоминалось в FAQ) Reporting Services 2005 не выполняет встраивание шрифтов в файлы PDF. Я думаю, что это нормально на данный момент - самая важная часть была в состоянии нажать печать и получить правильные шрифты.

Причина, по которой шрифты не появились сразу, объясняется в FAQ:

Вопрос: я установил шрифт на своем клиенте / сервере, но я все еще вижу ?или черный ящик. Почему? А: для клиента машина, закрывающая все экземпляры PDF viewer затем снова открыть их следует исправьте эту проблему.

Для сервера перезагрузите компьютер. службы должны разрешить визуализатор PDF чтобы подобрать новую информацию о шрифте.

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

sql   reporting-services    

563   5   08:21, 11th August, 2020


SQL Reporting Services viewer for webpage-можно ли переместить кнопку Просмотр отчета?

Используя элемент управления viewer для отображения отчетов служб SQL Reporting Services на веб-странице (Microsoft.ReportViewer.WebForms), можно ли переместить кнопку Просмотр отчета? По умолчанию он находится в самой правой части отчета, что означает, что вам нужно прокрутить весь путь до того, как кнопка будет видна. Это не проблема для отчетов, которые соответствуют ширине окна, но для очень широких отчетов это быстро становится проблемой.

asp.net   reporting-services   reportviewer    

386   5   18:06, 7th August, 2020


SQL 2005 элемент пользовательского отчета служб Reporting Services (CRI) - каковы ограничения?

Чтение MSDN (и других источников) о пользовательских элементах отчета (CRI) для служб reporting services 2005. Похоже, я ограничен созданием bitmap. Даже с некоторым наложением отображения для обнаружения щелчков мыши на нем. Там далеко, чтобы идти вокруг этого? Есть две вещи, которые я хотел бы сделать:

  • Добавьте HTML непосредственно в отчет, чтобы отформатировать динамический текст.
  • Внедрить в отчет элемент управления flash (swf). Это можно сделать с помощью HTML, если предыдущая точка возможна. Но может быть есть и другой путь

Есть предложения? Что я упускаю?

reporting-services   reportingservices-2005    

441   3   10:37, 10th August, 2020


Автоматизированное Тестирование Веб-Сервисов

Я хотел бы сделать некоторое интеграционное тестирование веб-службы из NUnit или MBUnit. Я еще не углублялся в это слишком глубоко, но я почти уверен, что мне нужно будет раскрутить WebDev.WebServer.exe внутри "unit test", чтобы сделать это. (Я знаю, что это не совсем юнит-тест).

Да, я могу тестировать базовые объекты, которые использует веб-служба, самостоятельно (что я и делаю), но в этом случае мне интересно проверить, что прокси-серверы работают и обрабатываются должным образом и т. д.

Какой-нибудь совет?

web-services   unit-testing   integration-testing    

487   6   09:50, 19th August, 2020


Лучший способ выполнения динамического подзапроса в службах MS Reporting Services?

Я новичок в SQL Server Reporting Services, и мне было интересно, как лучше всего сделать следующее:

  • Запрос на получение списка популярных IDs
  • Подзапрос на каждый элемент для получения свойств из другой таблицы

В идеале итоговые столбцы отчета должны выглядеть следующим образом:

[ID] [property1] [property2] [SELECT COUNT(*)
                              FROM AnotherTable 
                              WHERE ForeignID=ID]

Возможно, есть способы построить гигантский запрос SQL, чтобы сделать это все за один раз, но я бы предпочел разделить его на части. Рекомендуется ли написать функцию VB для выполнения подзапроса для каждой строки? Спасибо за любую помощь.

sql   sql-server   reporting-services   service   reporting    

460   3   03:21, 7th August, 2020


"Бесшумная" печать в веб-приложении

Я работаю над веб-приложением, которое должно печатать молча, то есть без участия пользователя. Какой самый лучший способ достичь этого? Ему не нравится, что это можно сделать только с Javascript, ни Flash и / или AIR. Самое близкое, что я видел, включает в себя Java applet.

Я могу понять, почему это было бы плохой идеей для любого веб-сайта, чтобы иметь возможность сделать это. Этот конкретный экземпляр предназначен для внутреннего приложения,и он вполне приемлем, если пользователю необходимо добавить URL в список надежных сайтов, установить аддон и т. д.

web-services   printing    

596   11   08:01, 24th August, 2020


Amazon Веб-Службы

Веб-Amazon услуг реалистичной платформы для развития предпринимательства?

web-services   amazon-web-services   cloud    

453   8   00:48, 23rd August, 2020


Как остановить Windows приложений от кражи фокуса

Я знаю, что это не совсем вопрос программирования,но вы все должны были испытать это.

So...you есть четыре или пять сеансов RDP, открытых над корпусом VPN, вы колотите внутри вашего любимого IDE, ваш VPN в центр обработки данных ненадолго отскакивает, а затем восстанавливается, все ваши RDP сеансы начинают восстанавливать свои соединения и при этом последовательно продолжают захватывать фокус, один за другим. Довольно чертовски раздражающе и откровенно грубо.

Есть идеи, как предотвратить такое поведение и просто сделать кнопку RDP client flash на панели задач вместо того, чтобы полностью отвлекать внимание от того, что вы делали?

@ Jason -спасибо за ответ, я использую 64-битную Vista и 64-битную Windows 2008. Есть идеи, насколько хорошо он играет?

@ Jason -хорошая идея. Сделано.

@ Ryan -спасибо и за ответ. Я пробовал терминалы несколько раз до этого, но довольно часто мне нужно видеть два или три сеанса рядом, что не очень хорошо облегчает табулирование, было бы неплохо иметь кнопку "выскочить в собственном окне". Однажды я схватил исходный код, чтобы исправить подобные вещи, но так и не нашел времени. Я также обнаружил, что он вел себя странно всякий раз, когда было короткое отключение сети (например, xDSL flapping), и он снова подключится к неправильному сеансу (обычно новому) и оставит сеанс, который я открыл, в отключенном состоянии на сервере. В противном случае терминалы были бы действительно классными, у нас есть 200+ windows серверов, и организация всех этих .rdp файлов может быть болью.

terminal-services   rdp    

439   3   07:10, 2nd August, 2020


Закрытие и утилизация обслуживание WCF

Метод Close на ICommunicationObject может выдавать два типа исключений, как MSDN описывает здесь . Я понимаю, почему метод Close может вызывать эти исключения, но я не понимаю, почему метод Dispose на прокси-сервере службы вызывает метод Close без try вокруг него. Разве ваш метод Dispose не является единственным местом, где вы хотите убедиться, что вы не создаете никаких исключений?

wcf   web-services    

457   2   23:47, 6th August, 2020


RESTful web services и HTTP глаголов

Каков минимальный набор глаголов HTTP, который сервер должен разрешить для веб-службы быть классифицирован как RESTful?

А что, если мой хозяин не разрешит PUT и DELETE ?

Действительно ли это важно, могу ли я жить долго и счастливо только с GET и POST ?


Обновление: Спасибо за ответы, ребята, ответ Роджера был, вероятно, лучшим из-за ссылки на интервью Билла Веннерса и Эллиота расти Гарольда. Теперь я все понимаю.


web-services   rest    

447   5   11:09, 18th August, 2020


Исключение InvalidOperationException при создании экземпляра веб-службы wcf

У меня есть веб-служба WCF, на которую ссылаются из библиотеки классов. После запуска проекта при создании объекта клиента службы из библиотеки классов я получаю сообщение InvalidOperationException with:

Не удалось найти элемент конечной точки по умолчанию, который ссылается на контракт 'MyServiceReference.IMyService' в клиенте ServiceModel раздел конфигурации. Это может быть связано с тем, что файл конфигурации не был найдено для вашего приложения, или потому что нет соответствия элементов конечной точки этот контракт можно найти в элементе клиент.

Код, который я использую для создания экземпляра::

myServiceClient = new MyServiceClient();

где MyServiceClient наследуется от

System.ServiceModel.ClientBase

Как мне решить эту проблему?

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

.net   wcf   web-services    

513   4   09:01, 9th August, 2020


Удаленный запуск и остановка службы на сервере W2008

У меня есть удивительное количество проблем с запуском и остановкой службы на моем удаленном сервере из моего скрипта msbuild.

SC.EXE и задача ServiceController MSBuild не предоставляют коммутаторы для разрешения имени пользователя / пароля, поэтому они не будут аутентифицироваться, поэтому я использую RemoteService.exe из www.intelliadmin.com

- Аутентификация с помощью \xx.xx.xx.xxx - Аутентификация завершена - Остановка обслуживания - Ошибка: Доступ Запрещен

Данные учетной записи пользователя, которые я указываю, предназначены для локального администратора на сервере, так что же случилось?! Я вырываю себе волосы!

Обновление:

OK вот еще немного предыстории. У меня есть машина XP в офисе, на которой работает сервер CI. Сценарий сборки соединяет VPN с центром обработки данных,где у меня есть машина Server 2008. Ни один из них не находится в домене.

service   windows-server-2008    

442   4   02:56, 25th August, 2020


Лучший способ запустить приложение Java в качестве демона *nix или службы Windows?

Я ищу лучший метод для запуска приложения Java в качестве демона *NIX или службы Windows. Я заглянул в оболочку сервиса Java, проект Apache Commons 'jsvc' и проект Apache Commons 'procrun' . До сих пор оболочка службы Java выглядит так, как будто это лучший вариант... но мне интересно, есть ли какие-либо другие лицензионные продукты "Open Source friendly".

java   unix   windows-services   daemon    

540   3   20:16, 18th August, 2020


Windows Увеличение Объема Услуг CPU Потребление

На моей работе у меня есть сцепление из шести Windows services, за которое я отвечаю, написанное в C# 2003 году. Каждая из этих служб содержит таймер, который срабатывает каждую минуту или около того, где происходит большая часть их работы.

Моя проблема заключается в том, что по мере запуска этих служб они начинают потреблять все больше и больше времени CPU через каждую итерацию цикла, даже если для них нет никакой значимой работы (т. е. они просто бездельничают, просматривая базу данных для чего-то). Когда они запускаются, каждая служба использует в среднем (около) 2-3% из 4 CPUs, что нормально. Через 24 часа каждая служба будет потреблять весь процессор на протяжении всего цикла выполнения своего цикла.

Кто-нибудь может помочь? Я в недоумении, что может быть причиной этого. Наше текущее решение заключается в том, чтобы перезапускать сервисы один раз в день (они отключаются сами, затем скрипт видит, что они отключены, и перезапускает их примерно в 3 часа ночи). Но это не долгосрочное решение; меня беспокоит то, что, поскольку службы становятся более загруженными, перезапуска их один раз в день может быть недостаточно... но поскольку существует значительный штраф за запуск (все они используют NHibernate для доступа к данным), поскольку они становятся более загруженными, именно то, что мы не хотим делать, - это перезапускать их чаще.


@akmad: правда, это очень трудно.

  1. Да, служба, запущенная изолированно, будет показывать тот же симптом с течением времени.
  2. Нет, это не так, мы уже смотрели на это. Это может произойти в 10 утра, в 6 вечера или в середине ночи. Здесь нет никакой последовательности.
  3. Мы делаем это, а они делают. Службы делают именно то, что они должны делать, и ничего больше.
  4. К сожалению, это требует предвидения того, когда именно услуги будут исчерпаны CPUs, что происходит по непредсказуемому графику и никогда не бывает очень быстро... что делает вещи вдвойне трудными, потому что мой босс будет запускать и перезапускать их, когда у них начнутся проблемы, не думая о проблемах отладки.
  5. Нет, они используют довольно стабильное количество RAM (ок. 60-80MB каждый, из 4 ГБ на машине).

Хорошие предложения, но rest заверил, что мы перепробовали все обычные способы устранения неполадок. Я надеюсь, что это проблема .NET, о которой кто-то может знать, и мы сможем работать над ее решением. Решение моего босса (которое я категорически не хочу реализовывать) состоит в том, чтобы поместить поле в базу данных, которая содержит несколько раз для перезапуска служб в течение дня, чтобы он мог устранить проблему и не думать о ней. Я Отчаянно ищу причину реальной проблемы, чтобы исправить ее, потому что это решение станет катастрофой примерно через шесть месяцев.


Эллис: у каждого из них своя функция. Один читает записи из базы данных Oracle где-то за пределами объекта; другой обрабатывает эти записи и передает файлы, принадлежащие этим записям, в нашу систему; третий проверяет эти файлы, чтобы убедиться, что они такие, какими мы их ожидаем; другой-это Служба технического обслуживания, которая постоянно проверяет такие вещи, как дисковое пространство (которого у нас достаточно) и опрашивает другие серверы, чтобы убедиться, что они живы; один работает только для того, чтобы убедиться, что все эти другие работают и выполняют свою работу, отслеживает и сообщает об ошибках и перезапускает все, что не удалось сохранить всю систему это происходит 24 часа в сутки.

Итак, если вы спрашиваете то, что я думаю, что вы спрашиваете, нет, нет ни одной общей вещи, которую делают все эти службы (кроме доступа к базе данных через NHibernate), на которую я могу указать как на потенциальную проблему. К сожалению, если это окажется фактической проблемой (что меня не сильно удивит), все это может быть испорчено-и я в конечном итоге перепишу все из них в простой SQL. Я надеюсь, что это проблема сборщика мусора или что-то более легкое для решения, чем NHibernate.


@Joshdan: никакого секрета. Как я уже сказал, мы испробовали все обычные способы устранения неполадок. Профилирование было бесполезным: профилировщик, который мы используем, не мог указать на какой-либо код, который фактически выполнялся, когда использование CPU было высоким. Эти службы были разорваны около месяца назад в поисках этой проблемы. Каждый раздел кода был проанализирован, чтобы попытаться выяснить, был ли наш код проблемой; я здесь не спрашиваю, потому что я не сделал свою домашнюю работу. Если бы это был простой случай, когда службы выполняли больше работы, чем ожидалось, это было бы поймано.

Проблема здесь заключается в том, что в большинстве случаев службы вообще ничего не делают, но все же умудряются потреблять 25% или более из четырех ядер CPU: они не находят никакой работы, выходят из своего цикла и ждут следующей итерации. Это должно, в буквальном смысле, почти не занимать времени CPU вообще.

Вот пример поведения, которое мы наблюдаем на службе без работы в течение двух дней (в неизменной среде). Это было захвачено на прошлой неделе:

День 1, 8 утра: авг. CPU использование приблизительно 3%
День 1, 6 вечера: авг. CPU использование приблизительно 8%
День 2, 7 утра: авг. CPU использование приблизительно 20%
День 2, 11 утра: авг. CPU использование приблизительно 30%

Рассмотрев все возможные мирские причины этого, я задал этот вопрос здесь, потому что я полагал (правильно, как оказалось), что получу более новаторские ответы (как Убигути) или указатели на вещи, о которых я не думал (как предложение Яна).


Так же происходит и Спайк CPU непосредственно перед таймером обратный вызов, в пределах обратного вызова таймера, или сразу после таймера обратный звонок?

Вы меня неправильно поняли. Это не Спайк. Если бы это было так, то не было бы никаких проблем; я могу справиться со спайками. Но это не так... использование CPU в целом растет. Даже когда служба ничего не делает, ожидая следующего удара таймера. Когда сервис запускается, все идет хорошо и спокойно, и график выглядит так, как вы и ожидали... как правило, использование 0%, с шипами до 10%, когда NHibernate попадает в базу данных или сервис выполняет какой-то тривиальный объем работы. Но это увеличивает до across-the-board 25% (больше, если я позволю ему зайти слишком далеко) использование во все времена, пока процесс запущен.

Это сделало предложение Йена логичной серебряной пулей (NHibernate делает много вещей, когда вы не смотрите). Увы, я реализовал его решение, но оно не возымело эффекта (у меня нет доказательств этого, но я действительно думаю, что это ухудшило ситуацию... среднее использование, кажется , теперь растет намного быстрее). Обратите внимание, что удаление NHibernate "sections" (как вы рекомендуете) нецелесообразно, так как это было бы уберите около 90% кода в сервисе, что позволило бы мне исключить таймер как проблему (которую я абсолютно намерен попробовать), но не может помочь мне исключить NHibernate как проблему, потому что если NHibernate вызывает это, то хитроумное исправление, которое реализовано (см. ниже), просто должно стать способом работы системы; мы настолько зависим от NHibernate для этого проекта, что PM просто не примет, что это вызывает неразрешимую структурную проблему.

Я только что заметил в нем чувство отчаяния. вопрос -- что ваши проблемы продолжалось бы и дальше, если бы не маленькое чудо

Я не хочу, чтобы все так вышло. В настоящее время службы перезапускаются ежедневно (с возможностью ввода любого количества часов в день для их выключения и перезапуска), что исправляет проблему, но не может быть долгосрочным решением, как только они переходят на производственную машину и начинают загружаться. Проблемы не будут продолжаться, независимо от того, исправляю ли я их или PM поддерживает это ограничение на них. Очевидно, что я предпочел бы реализовать реальное исправление, но поскольку первоначальное тестирование не выявило никаких причин для этого, а службы уже были подробно рассмотрены, PM предпочел бы просто перезапустить их несколько раз, чем тратить больше времени на их исправление. Это полностью выходит из-под моего контроля и делает чудо, о котором вы говорили, более важным, чем оно было бы в противном случае.

Это чрезвычайно интригует (постольку как Вы доверяете своему профайлеру).

Я не. Но тогда это Windows services, написанные в .NET 1.1, запущенные на машине Windows 2000, развернутой хитрым сценарием Nant, использующим старую версию NHibernate для доступа к базе данных. На самом деле, я бы сказал, что мало чему доверяю на этой машине.

c#   nhibernate   windows-services   .net-1.1    

425   7   19:36, 25th August, 2020


Как я могу установить textbox в многострочный режим в SSRS?

У меня есть отчет со многими полями, которые я пытаюсь сократить до 1 страницы по горизонтали (мне все равно, будет ли это 2 или 200 страниц по вертикали... просто не хочу иметь дело с 2 страницами шириной по x страницам длиной train-wreck). Тем не менее, он имеет дело с контактной информацией.

Моя идея состояла в том, чтобы сделать:

Name:      Address:   City:      State:    ...
Jon Doe    Addr1      ThisTown    XX       ...    
           Addr2
           Addr3
-----------------------------------------------
Jane Doe   Addr1      ThisTown    XX       ...
           Addr2
           Addr3
-----------------------------------------------

Есть ли какой-то способ установить textbox как многострочный (или результат SQL)? Неужели я пропустил что-то чертовски очевидное?


Свойство CanGrow включено по умолчанию, и я дважды проверил, что это правда. Моя проблема в том, что я не знаю, как заставить линию прерваться. Я получаю 3 адресных поля, которые просто заполняют строку, а затем переносятся в другую. Я пробовал /n, \n (так как я никогда не могу вспомнить, какой Слэш правильно поставить), <br>, <br /> (так как отчет будет просматриваться в элементе управления ReportViewer на веб-сайте ASP.NET). Я не могу придумать никаких других способов обернуть текст.

Есть ли какой-то способ получить результаты из базы данных в виде 3 строк text/characters?

reporting-services   textbox   multiline    

485   8   00:30, 28th August, 2020


guid REST URL для вызова службы данных ado.net?

Попытка использовать guid в качестве идентификатора ресурса в rest url, но не может найти какой-либо ресурс о том, как это сделать. Мой лучший прямо сейчас (не работает, хотя) это: http://localhost:49157/PhotogalleryDS.svc/gallery ('1d03beb3-6d63-498b-aad7-fab0b1480996') (Я пробовал duouble / одинарные кавычки. А также {guid....} с фигурными скобками. Все равно не повезло.

я только получаю: Синтаксическая ошибка '"' в позиции 0.

Вопрос: как бы я (в отношении спецификации) написал url для ресурса, где идентификатор является guid?

rest   wcf-data-services    

471   2   18:10, 15th August, 2020


Существует ли для служб Reporting Services 2005 блок-график?

Есть коробка диаграмма , или ящик с усами диаграмма для представления услуг 2005? Из-за внешнего вида документации, похоже, нет одного из коробки; поэтому мне интересно, есть ли третья сторона, у которой есть график, или способ построить свой собственный?

sql   reporting-services   graph    

469   4   01:42, 18th August, 2020


Есть ли способ иметь функциональность index.html с содержимым, размещенным на S3?

Есть ли способ сделать S3 по умолчанию для страницы index.html? E.g.: Список объектов my bucket:

/index.html
/favicon.ico
/images/logo.gif

Звонок на www.example.com/ index.html

amazon-s3   amazon-web-services    

473   7   20:07, 24th August, 2020


Отладка веб-службы с помощью пакета SOAP

У меня есть веб-служба, которую я создал в C#, и тестовый жгут, предоставленный моим клиентом. К сожалению, мой веб-сервис, похоже,не анализирует объекты, созданные тестовым жгутом. Я считаю, что проблема заключается в сериализации пакета soap.

Используя TCPTrace, я смог получить пакет soap, переданный веб-службе, но только на удаленной машине, поэтому я не могу отладить его там. Есть ли способ вызвать мой локальный веб-сервис с генерируемым пакетом soap, а не мой текущий тестовый жгут, где я вручную создаю объекты и вызываю веб-сервис через веб-ссылку?

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

c#   web-services   soap   tcptrace-pocketsoap    

410   4   05:00, 27th August, 2020


Как лучше всего использовать веб-сервисы в python?

У меня есть приложение среднего размера, которое работает как веб-сервис .net, который я не контролирую, и я хочу создать свободный pythonic API над ним, чтобы обеспечить легкий сценарий.

Я хотел узнать, что является лучшим / наиболее практичным решением для использования веб-сервисов в python.

Редактировать: Мне нужно потреблять комплекс soap WS и у меня нет никакого контроля над этим.

python   web-services   soap    

381   3   01:16, 23rd August, 2020


Как агрегировать данные из SQL Server 2005

У меня есть около 150 000 строк данных, записанных в базу данных каждый день. Эти строки представляют исходящие статьи, например. Теперь мне нужно показать график с использованием SSRS , который показывает среднее количество статей в день с течением времени . Мне также нужна информация о фактическом количестве статей со вчерашнего дня .

Идея состоит в том, чтобы иметь агрегированное представление обо всех наших транзакциях и иметь что-то, что может указывать на то, что что-то не так (что мы, например, отправляем 20% меньше статей, чем в среднем).

Моя идея состоит в том, чтобы вчерашние данные перемещались в SSAS каждую ночь и там хранили агрегированное значение количества транзакций и фактическое количество транзакций из вчерашних данных. Использование SSAS, как мы надеемся, ускорит отчеты.

Как вы думаете, это правильная идея? Должен ли я пропустить SSAS и иметь отчеты прямо на необработанных данных? Я знаю, как использовать службы reporting services для необработанных данных с использованием стандартных запросов SQL, но как это изменится при запросе SSAS? Я не знаю , с чего начать ..?

sql-server   reporting-services   ssas    

440   5   13:49, 7th August, 2020


Как сделать кроссдомен звонки из Silverlight?

Что необходимо для успешного выполнения вызова crossdomain из Silverlight?

silverlight   web-services    

377   4   02:50, 20th August, 2020


Amazon EC2

Насколько он хорош как замена стандартному хостингу(аренде сервера)? В плане реальной стоимости на выходе, и производительности в работе? Можно ли получить гарантированные ресурсы сопоставимые с выделенным сервером?
Если есть опыт развертывания крупных проектов — буду очень рад услышать отзыв.

Amazon   Web   Services   Облачные   вычисления    

397   4   06:49, 18th August, 2020


Instance у амазона продолжает учитываться если остановлен?

Если у меня инстанс приостановлен (через Stop), а не удален (Terminate), будет ли расти мой счет?

Amazon   Web   Services    

356   2   11:07, 21st August, 2020


Instance у амазона продолжает учитываться если остановлен?

Если у меня инстанс приостановлен (через Stop), а не удален (Terminate), будет ли расти мой счет?

Amazon   Web   Services    

361   2   07:51, 19th August, 2020


amazon ec2 : как использовать AMI который есть в USA в зоне EU

Есть конкретный инстанс AMI который рекомендован поставщиком услуг(wavemaker.com)
Однако данный AMI доступен только для USA
Как быть?

Amazon   Web   Services    

325   1   23:29, 25th August, 2020


[Amazon EC2] Можно ли установить Windows на Linux инстанцию (и меньше платить)?

Собственно, задался таким вопросом: можно ли установить свой Windows (лицензионный) на Linux-инстанцию Amazon EC2? Смысл в том, что Linux-инстанция стоит почти в 2 раза меньше денег.

Пробовал сделать так:

1. Создал Windows-инстанцию. Остановил и отсоединил диск.
2. Создал Линукс-инстанцию. Остановил и отключил диск.
3. Подключил диск с установленным Windows (тот самый, который предоставляет Amazon) к Линукс-инстанции как /dev/sda1.
4. Запустил Линукс-инстанцию (с замененным диском).

В результате машина запустилась, но подключиться по RDP или к Web-серверу не удалось (все нужные порты были открыты). Т.е., скорее всего, Windows не смогла запуститься, но как об этом узнать, ведь доступа по VNC нет…

Почему не запустилась — не понятно… Может для Линуска у них другая конфигурация машины?

Придумал другой способ: использовать Windows AIK для создания диска, с которого можно установить Windows автоматически. Но не уверен что это сработает.

Может кто уже занимался этим вопросом и может поделиться опытом?

Amazon   Web   Services    

255   2   22:31, 7th August, 2020


Регистрация в Amazon web services?

Регистрация там, как регистрация кроме одного пункта — мне должны позвонить и я должен им передать код, который они выдали во время регистрации. Вопрос — как передать код?


Допустим код — 1234.


Я должен продиктовать 1-2-3-4 или сказать одна тысяча двести тридцать четыре? Погуглив кто-то рассказывал что можно не рассказывать, а ввести через телефон. Как ввести? Что нажать до, что после?

Amazon   Web   Services    

330   5   02:56, 24th August, 2020


Amazon AWS. Возможность stop/start?

Здравствуйте.

Никак не могу найти в чем причина. Некоторые AMI (instance) на Ubuntu могут останавливаться и стартовать, а некоторые только terminate. Никак не могу понять почему.

Как научить существующую готовую AMI (например ami-294aa340) останавливаться и стартовать?

Amazon   Web   Services    

380   2   04:25, 3rd August, 2020


Резервное копирование с помощью backup-manager на s3

Добрый день, использую backup-manager для резервного копирования на Amazon S3.

Однако вопрос, как копировать бэкапы в определённую папку в bucket'е?
Директива BM_UPLOAD_DESTINATION=«folder_name» результата не даёт. Бэкапы всё-равно льются в корень bucket'а.

и, в качестве дополнения, второй вопрос. Допустим надо бэкапить определённую директорию раз в 15 минут. Но! даже если что-то в директории изменилось, backup-manager создаёт один архив на один день:
File /var/archives/hostname-etc.20101113.master.tar.gz already exists, skipping.
Можно ли это победить каким-то образом?

Amazon   Web   Services   Резервное   копирование    

322   1   17:12, 19th August, 2020


Система мониторинга для ec2 linux инстансов

Нужна система мониторинга (и, желательно, оповещения), вроде zabbix, которая может автоматически добавлять сервера для мониторинга:
используется auto-scale фича Amazon ec2, потому новые сервера появляются сами из одного и того же ami. Необходимо, чтобы новые сервера централизированно мониторились до момента их уничтожения, что происходит автоматически.

Какие системы с такими возможностями вы можете посоветовать?

Amazon   Web   Services    

301   2   09:37, 17th August, 2020


Как юр. лицо может платить Amazon?

Хабравчане, привет, случился у меня затык нетехнического плана, выручайте.

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


Есть ли реселлеры AWS в России? Может какие-нибудь другие пути оплаты?

Amazon   Web   Services    

267   2   21:06, 1st October, 2020